WORST_CASE(Omega(n^1),O(n^2)) proof of /export/starexec/sandbox/benchmark/theBenchmark.trs # AProVE Commit ID: c69e44bd14796315568835c1ffa2502984884775 mhark 20210624 unpublished The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^2). (0) CpxRelTRS (1) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 1218 ms] (2) CpxRelTRS (3) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (4) CpxWeightedTrs (5) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (6) CpxTypedWeightedTrs (7) CompletionProof [UPPER BOUND(ID), 12 ms] (8) CpxTypedWeightedCompleteTrs (9) NarrowingProof [BOTH BOUNDS(ID, ID), 18 ms] (10) CpxTypedWeightedCompleteTrs (11) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 1 ms] (12) CpxRNTS (13) InliningProof [UPPER BOUND(ID), 4257 ms] (14) CpxRNTS (15) SimplificationProof [BOTH BOUNDS(ID, ID), 20 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), 96 ms] (22) CpxRNTS (23) IntTrsBoundProof [UPPER BOUND(ID), 7 ms] (24) CpxRNTS (25) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (26) CpxRNTS (27) IntTrsBoundProof [UPPER BOUND(ID), 191 ms] (28) CpxRNTS (29) IntTrsBoundProof [UPPER BOUND(ID), 24 ms] (30) CpxRNTS (31) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (32) CpxRNTS (33) IntTrsBoundProof [UPPER BOUND(ID), 790 ms] (34) CpxRNTS (35) IntTrsBoundProof [UPPER BOUND(ID), 177 ms] (36) CpxRNTS (37) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (38) CpxRNTS (39) IntTrsBoundProof [UPPER BOUND(ID), 191 ms] (40) CpxRNTS (41) IntTrsBoundProof [UPPER BOUND(ID), 32 ms] (42) CpxRNTS (43) ResultPropagationProof [UPPER BOUND(ID), 7 ms] (44) CpxRNTS (45) IntTrsBoundProof [UPPER BOUND(ID), 1191 ms] (46) CpxRNTS (47) IntTrsBoundProof [UPPER BOUND(ID), 168 ms] (48) CpxRNTS (49) ResultPropagationProof [UPPER BOUND(ID), 1 ms] (50) CpxRNTS (51) IntTrsBoundProof [UPPER BOUND(ID), 514 ms] (52) CpxRNTS (53) IntTrsBoundProof [UPPER BOUND(ID), 26 ms] (54) CpxRNTS (55) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (56) CpxRNTS (57) IntTrsBoundProof [UPPER BOUND(ID), 175 ms] (58) CpxRNTS (59) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (60) CpxRNTS (61) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 483 ms] (64) CpxRNTS (65) IntTrsBoundProof [UPPER BOUND(ID), 109 ms] (66) CpxRNTS (67) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 1802 ms] (70) CpxRNTS (71) IntTrsBoundProof [UPPER BOUND(ID), 107 ms] (72) CpxRNTS (73) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 1529 ms] (76) CpxRNTS (77) IntTrsBoundProof [UPPER BOUND(ID), 326 ms] (78) CpxRNTS (79) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 1418 ms] (82) CpxRNTS (83) IntTrsBoundProof [UPPER BOUND(ID), 113 ms] (84) CpxRNTS (85) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (86) CpxRNTS (87) IntTrsBoundProof [UPPER BOUND(ID), 303 ms] (88) CpxRNTS (89) IntTrsBoundProof [UPPER BOUND(ID), 23 ms] (90) CpxRNTS (91) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (92) CpxRNTS (93) IntTrsBoundProof [UPPER BOUND(ID), 270 ms] (94) CpxRNTS (95) IntTrsBoundProof [UPPER BOUND(ID), 64 ms] (96) CpxRNTS (97) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (98) CpxRNTS (99) IntTrsBoundProof [UPPER BOUND(ID), 330 ms] (100) CpxRNTS (101) IntTrsBoundProof [UPPER BOUND(ID), 74 ms] (102) CpxRNTS (103) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (104) CpxRNTS (105) IntTrsBoundProof [UPPER BOUND(ID), 1538 ms] (106) CpxRNTS (107) IntTrsBoundProof [UPPER BOUND(ID), 408 ms] (108) CpxRNTS (109) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (110) CpxRNTS (111) IntTrsBoundProof [UPPER BOUND(ID), 898 ms] (112) CpxRNTS (113) IntTrsBoundProof [UPPER BOUND(ID), 277 ms] (114) CpxRNTS (115) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (116) CpxRNTS (117) IntTrsBoundProof [UPPER BOUND(ID), 187 ms] (118) CpxRNTS (119) IntTrsBoundProof [UPPER BOUND(ID), 2 ms] (120) CpxRNTS (121) ResultPropagationProof [UPPER BOUND(ID), 5 ms] (122) CpxRNTS (123) IntTrsBoundProof [UPPER BOUND(ID), 1473 ms] (124) CpxRNTS (125) IntTrsBoundProof [UPPER BOUND(ID), 150 ms] (126) CpxRNTS (127) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (128) CpxRNTS (129) IntTrsBoundProof [UPPER BOUND(ID), 98 ms] (130) CpxRNTS (131) IntTrsBoundProof [UPPER BOUND(ID), 14 ms] (132) CpxRNTS (133) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (134) CpxRNTS (135) IntTrsBoundProof [UPPER BOUND(ID), 1705 ms] (136) CpxRNTS (137) IntTrsBoundProof [UPPER BOUND(ID), 151 ms] (138) CpxRNTS (139) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (140) CpxRNTS (141) IntTrsBoundProof [UPPER BOUND(ID), 332 ms] (142) CpxRNTS (143) IntTrsBoundProof [UPPER BOUND(ID), 23 ms] (144) CpxRNTS (145) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (146) CpxRNTS (147) IntTrsBoundProof [UPPER BOUND(ID), 3089 ms] (148) CpxRNTS (149) IntTrsBoundProof [UPPER BOUND(ID), 180 ms] (150) CpxRNTS (151) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (152) CpxRNTS (153) IntTrsBoundProof [UPPER BOUND(ID), 171 ms] (154) CpxRNTS (155) IntTrsBoundProof [UPPER BOUND(ID), 4 ms] (156) CpxRNTS (157) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (158) CpxRNTS (159) IntTrsBoundProof [UPPER BOUND(ID), 3047 ms] (160) CpxRNTS (161) IntTrsBoundProof [UPPER BOUND(ID), 224 ms] (162) CpxRNTS (163) FinalProof [FINISHED, 0 ms] (164) BOUNDS(1, n^2) (165) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] (166) TRS for Loop Detection (167) DecreasingLoopProof [LOWER BOUND(ID), 185 ms] (168) BEST (169) proven lower bound (170) LowerBoundPropagationProof [FINISHED, 0 ms] (171) BOUNDS(n^1, INF) (172) TRS for Loop Detection ---------------------------------------- (0) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^2). The TRS R consists of the following rules: #ABS(#0) -> c15 #ABS(#neg(z0)) -> c16 #ABS(#pos(z0)) -> c17 #ABS(#s(z0)) -> c18 #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERT#1(nil, z0) -> c22 INSERT#2(#false, z0, z1, z2) -> c23 INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERTD#1(nil, z0) -> c27 INSERTD#2(#false, z0, z1, z2) -> c28 INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) INSERTIONSORT#1(nil) -> c32 INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) INSERTIONSORTD#1(nil) -> c35 TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) TESTLIST(z0) -> c38(#ABS(#0)) TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) The (relative) TRS S consists of the following rules: #CKLT(#EQ) -> c #CKLT(#GT) -> c1 #CKLT(#LT) -> c2 #COMPARE(#0, #0) -> c3 #COMPARE(#0, #neg(z0)) -> c4 #COMPARE(#0, #pos(z0)) -> c5 #COMPARE(#0, #s(z0)) -> c6 #COMPARE(#neg(z0), #0) -> c7 #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) #COMPARE(#neg(z0), #pos(z1)) -> c9 #COMPARE(#pos(z0), #0) -> c10 #COMPARE(#pos(z0), #neg(z1)) -> c11 #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) #COMPARE(#s(z0), #0) -> c13 #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) #cklt(#EQ) -> #false #cklt(#GT) -> #false #cklt(#LT) -> #true #compare(#0, #0) -> #EQ #compare(#0, #neg(z0)) -> #GT #compare(#0, #pos(z0)) -> #LT #compare(#0, #s(z0)) -> #LT #compare(#neg(z0), #0) -> #LT #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) #compare(#neg(z0), #pos(z1)) -> #LT #compare(#pos(z0), #0) -> #GT #compare(#pos(z0), #neg(z1)) -> #GT #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) #compare(#s(z0), #0) -> #GT #compare(#s(z0), #s(z1)) -> #compare(z0, z1) #abs(#0) -> #0 #abs(#neg(z0)) -> #pos(z0) #abs(#pos(z0)) -> #pos(z0) #abs(#s(z0)) -> #pos(#s(z0)) #less(z0, z1) -> #cklt(#compare(z0, z1)) insert(z0, z1) -> insert#1(z1, z0) insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) insert#1(nil, z0) -> ::(z0, nil) insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) insertD(z0, z1) -> insertD#1(z1, z0) insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) insertD#1(nil, z0) -> ::(z0, nil) insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) insertionsort(z0) -> insertionsort#1(z0) insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) insertionsort#1(nil) -> nil insertionsortD(z0) -> insertionsortD#1(z0) insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) insertionsortD#1(nil) -> nil testInsertionsort(z0) -> insertionsort(testList(#unit)) testInsertionsortD(z0) -> insertionsortD(testList(#unit)) testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) Rewrite Strategy: INNERMOST ---------------------------------------- (1) SInnermostTerminationProof (BOTH CONCRETE BOUNDS(ID, ID)) proved innermost termination of relative rules ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^2). The TRS R consists of the following rules: #ABS(#0) -> c15 #ABS(#neg(z0)) -> c16 #ABS(#pos(z0)) -> c17 #ABS(#s(z0)) -> c18 #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERT#1(nil, z0) -> c22 INSERT#2(#false, z0, z1, z2) -> c23 INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERTD#1(nil, z0) -> c27 INSERTD#2(#false, z0, z1, z2) -> c28 INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) INSERTIONSORT#1(nil) -> c32 INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) INSERTIONSORTD#1(nil) -> c35 TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) TESTLIST(z0) -> c38(#ABS(#0)) TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) The (relative) TRS S consists of the following rules: #CKLT(#EQ) -> c #CKLT(#GT) -> c1 #CKLT(#LT) -> c2 #COMPARE(#0, #0) -> c3 #COMPARE(#0, #neg(z0)) -> c4 #COMPARE(#0, #pos(z0)) -> c5 #COMPARE(#0, #s(z0)) -> c6 #COMPARE(#neg(z0), #0) -> c7 #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) #COMPARE(#neg(z0), #pos(z1)) -> c9 #COMPARE(#pos(z0), #0) -> c10 #COMPARE(#pos(z0), #neg(z1)) -> c11 #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) #COMPARE(#s(z0), #0) -> c13 #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) #cklt(#EQ) -> #false #cklt(#GT) -> #false #cklt(#LT) -> #true #compare(#0, #0) -> #EQ #compare(#0, #neg(z0)) -> #GT #compare(#0, #pos(z0)) -> #LT #compare(#0, #s(z0)) -> #LT #compare(#neg(z0), #0) -> #LT #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) #compare(#neg(z0), #pos(z1)) -> #LT #compare(#pos(z0), #0) -> #GT #compare(#pos(z0), #neg(z1)) -> #GT #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) #compare(#s(z0), #0) -> #GT #compare(#s(z0), #s(z1)) -> #compare(z0, z1) #abs(#0) -> #0 #abs(#neg(z0)) -> #pos(z0) #abs(#pos(z0)) -> #pos(z0) #abs(#s(z0)) -> #pos(#s(z0)) #less(z0, z1) -> #cklt(#compare(z0, z1)) insert(z0, z1) -> insert#1(z1, z0) insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) insert#1(nil, z0) -> ::(z0, nil) insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) insertD(z0, z1) -> insertD#1(z1, z0) insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) insertD#1(nil, z0) -> ::(z0, nil) insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) insertionsort(z0) -> insertionsort#1(z0) insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) insertionsort#1(nil) -> nil insertionsortD(z0) -> insertionsortD#1(z0) insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) insertionsortD#1(nil) -> nil testInsertionsort(z0) -> insertionsort(testList(#unit)) testInsertionsortD(z0) -> insertionsortD(testList(#unit)) testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) Rewrite Strategy: INNERMOST ---------------------------------------- (3) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, n^2). The TRS R consists of the following rules: #ABS(#0) -> c15 [1] #ABS(#neg(z0)) -> c16 [1] #ABS(#pos(z0)) -> c17 [1] #ABS(#s(z0)) -> c18 [1] #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) [1] INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) [1] INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) [1] INSERT#1(nil, z0) -> c22 [1] INSERT#2(#false, z0, z1, z2) -> c23 [1] INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) [1] INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) [1] INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) [1] INSERTD#1(nil, z0) -> c27 [1] INSERTD#2(#false, z0, z1, z2) -> c28 [1] INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) [1] INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) [1] INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) [1] INSERTIONSORT#1(nil) -> c32 [1] INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) [1] INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) [1] INSERTIONSORTD#1(nil) -> c35 [1] TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) [1] TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) [1] TESTLIST(z0) -> c38(#ABS(#0)) [1] TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) [1] TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) [1] TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) [1] TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) [1] TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) [1] TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) [1] TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) [1] TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) [1] TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) [1] #CKLT(#EQ) -> c [0] #CKLT(#GT) -> c1 [0] #CKLT(#LT) -> c2 [0] #COMPARE(#0, #0) -> c3 [0] #COMPARE(#0, #neg(z0)) -> c4 [0] #COMPARE(#0, #pos(z0)) -> c5 [0] #COMPARE(#0, #s(z0)) -> c6 [0] #COMPARE(#neg(z0), #0) -> c7 [0] #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) [0] #COMPARE(#neg(z0), #pos(z1)) -> c9 [0] #COMPARE(#pos(z0), #0) -> c10 [0] #COMPARE(#pos(z0), #neg(z1)) -> c11 [0] #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) [0] #COMPARE(#s(z0), #0) -> c13 [0] #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) [0] #cklt(#EQ) -> #false [0] #cklt(#GT) -> #false [0] #cklt(#LT) -> #true [0] #compare(#0, #0) -> #EQ [0] #compare(#0, #neg(z0)) -> #GT [0] #compare(#0, #pos(z0)) -> #LT [0] #compare(#0, #s(z0)) -> #LT [0] #compare(#neg(z0), #0) -> #LT [0] #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) [0] #compare(#neg(z0), #pos(z1)) -> #LT [0] #compare(#pos(z0), #0) -> #GT [0] #compare(#pos(z0), #neg(z1)) -> #GT [0] #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) [0] #compare(#s(z0), #0) -> #GT [0] #compare(#s(z0), #s(z1)) -> #compare(z0, z1) [0] #abs(#0) -> #0 [0] #abs(#neg(z0)) -> #pos(z0) [0] #abs(#pos(z0)) -> #pos(z0) [0] #abs(#s(z0)) -> #pos(#s(z0)) [0] #less(z0, z1) -> #cklt(#compare(z0, z1)) [0] insert(z0, z1) -> insert#1(z1, z0) [0] insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) [0] insert#1(nil, z0) -> ::(z0, nil) [0] insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) [0] insertD(z0, z1) -> insertD#1(z1, z0) [0] insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) [0] insertD#1(nil, z0) -> ::(z0, nil) [0] insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) [0] insertionsort(z0) -> insertionsort#1(z0) [0] insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) [0] insertionsort#1(nil) -> nil [0] insertionsortD(z0) -> insertionsortD#1(z0) [0] insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) [0] insertionsortD#1(nil) -> nil [0] testInsertionsort(z0) -> insertionsort(testList(#unit)) [0] testInsertionsortD(z0) -> insertionsortD(testList(#unit)) [0] testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (5) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (6) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: #ABS(#0) -> c15 [1] #ABS(#neg(z0)) -> c16 [1] #ABS(#pos(z0)) -> c17 [1] #ABS(#s(z0)) -> c18 [1] #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) [1] INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) [1] INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) [1] INSERT#1(nil, z0) -> c22 [1] INSERT#2(#false, z0, z1, z2) -> c23 [1] INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) [1] INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) [1] INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) [1] INSERTD#1(nil, z0) -> c27 [1] INSERTD#2(#false, z0, z1, z2) -> c28 [1] INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) [1] INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) [1] INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) [1] INSERTIONSORT#1(nil) -> c32 [1] INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) [1] INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) [1] INSERTIONSORTD#1(nil) -> c35 [1] TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) [1] TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) [1] TESTLIST(z0) -> c38(#ABS(#0)) [1] TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) [1] TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) [1] TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) [1] TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) [1] TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) [1] TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) [1] TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) [1] TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) [1] TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) [1] #CKLT(#EQ) -> c [0] #CKLT(#GT) -> c1 [0] #CKLT(#LT) -> c2 [0] #COMPARE(#0, #0) -> c3 [0] #COMPARE(#0, #neg(z0)) -> c4 [0] #COMPARE(#0, #pos(z0)) -> c5 [0] #COMPARE(#0, #s(z0)) -> c6 [0] #COMPARE(#neg(z0), #0) -> c7 [0] #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) [0] #COMPARE(#neg(z0), #pos(z1)) -> c9 [0] #COMPARE(#pos(z0), #0) -> c10 [0] #COMPARE(#pos(z0), #neg(z1)) -> c11 [0] #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) [0] #COMPARE(#s(z0), #0) -> c13 [0] #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) [0] #cklt(#EQ) -> #false [0] #cklt(#GT) -> #false [0] #cklt(#LT) -> #true [0] #compare(#0, #0) -> #EQ [0] #compare(#0, #neg(z0)) -> #GT [0] #compare(#0, #pos(z0)) -> #LT [0] #compare(#0, #s(z0)) -> #LT [0] #compare(#neg(z0), #0) -> #LT [0] #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) [0] #compare(#neg(z0), #pos(z1)) -> #LT [0] #compare(#pos(z0), #0) -> #GT [0] #compare(#pos(z0), #neg(z1)) -> #GT [0] #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) [0] #compare(#s(z0), #0) -> #GT [0] #compare(#s(z0), #s(z1)) -> #compare(z0, z1) [0] #abs(#0) -> #0 [0] #abs(#neg(z0)) -> #pos(z0) [0] #abs(#pos(z0)) -> #pos(z0) [0] #abs(#s(z0)) -> #pos(#s(z0)) [0] #less(z0, z1) -> #cklt(#compare(z0, z1)) [0] insert(z0, z1) -> insert#1(z1, z0) [0] insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) [0] insert#1(nil, z0) -> ::(z0, nil) [0] insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) [0] insertD(z0, z1) -> insertD#1(z1, z0) [0] insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) [0] insertD#1(nil, z0) -> ::(z0, nil) [0] insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) [0] insertionsort(z0) -> insertionsort#1(z0) [0] insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) [0] insertionsort#1(nil) -> nil [0] insertionsortD(z0) -> insertionsortD#1(z0) [0] insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) [0] insertionsortD#1(nil) -> nil [0] testInsertionsort(z0) -> insertionsort(testList(#unit)) [0] testInsertionsortD(z0) -> insertionsortD(testList(#unit)) [0] testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) [0] The TRS has the following type information: #ABS :: #0:#neg:#pos:#s -> c15:c16:c17:c18 #0 :: #0:#neg:#pos:#s c15 :: c15:c16:c17:c18 #neg :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c16 :: c15:c16:c17:c18 #pos :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c17 :: c15:c16:c17:c18 #s :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c18 :: c15:c16:c17:c18 #LESS :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> c19 c19 :: c:c1:c2 -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 -> c19 #CKLT :: #EQ:#GT:#LT -> c:c1:c2 #compare :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> #EQ:#GT:#LT #COMPARE :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 INSERT :: #0:#neg:#pos:#s -> :::nil -> c20 c20 :: c21:c22 -> c20 INSERT#1 :: :::nil -> #0:#neg:#pos:#s -> c21:c22 :: :: #0:#neg:#pos:#s -> :::nil -> :::nil c21 :: c23:c24 -> c19 -> c21:c22 INSERT#2 :: #false:#true -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> c23:c24 #less :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> #false:#true nil :: :::nil c22 :: c21:c22 #false :: #false:#true c23 :: c23:c24 #true :: #false:#true c24 :: c20 -> c23:c24 INSERTD :: #0:#neg:#pos:#s -> :::nil -> c25 c25 :: c26:c27 -> c25 INSERTD#1 :: :::nil -> #0:#neg:#pos:#s -> c26:c27 c26 :: c28:c29 -> c19 -> c26:c27 INSERTD#2 :: #false:#true -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> c28:c29 c27 :: c26:c27 c28 :: c28:c29 c29 :: c25 -> c28:c29 INSERTIONSORT :: :::nil -> c30 c30 :: c31:c32 -> c30 INSERTIONSORT#1 :: :::nil -> c31:c32 c31 :: c20 -> c30 -> c31:c32 insertionsort :: :::nil -> :::nil c32 :: c31:c32 INSERTIONSORTD :: :::nil -> c33 c33 :: c34:c35 -> c33 INSERTIONSORTD#1 :: :::nil -> c34:c35 c34 :: c25 -> c33 -> c34:c35 insertionsortD :: :::nil -> :::nil c35 :: c34:c35 TESTINSERTIONSORT :: a -> c36 c36 :: c30 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 -> c36 testList :: #unit -> :::nil #unit :: #unit TESTLIST :: #unit -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 TESTINSERTIONSORTD :: b -> c37 c37 :: c33 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 -> c37 c38 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c39 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c40 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c41 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c42 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c43 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c44 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c45 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c46 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c47 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 #EQ :: #EQ:#GT:#LT c :: c:c1:c2 #GT :: #EQ:#GT:#LT c1 :: c:c1:c2 #LT :: #EQ:#GT:#LT c2 :: c:c1:c2 c3 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c4 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c5 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c6 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c7 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c8 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c9 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c10 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c11 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c12 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c13 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 c14 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14 #cklt :: #EQ:#GT:#LT -> #false:#true #abs :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s insert :: #0:#neg:#pos:#s -> :::nil -> :::nil insert#1 :: :::nil -> #0:#neg:#pos:#s -> :::nil insert#2 :: #false:#true -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> :::nil insertD :: #0:#neg:#pos:#s -> :::nil -> :::nil insertD#1 :: :::nil -> #0:#neg:#pos:#s -> :::nil insertD#2 :: #false:#true -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> :::nil insertionsort#1 :: :::nil -> :::nil insertionsortD#1 :: :::nil -> :::nil testInsertionsort :: c -> :::nil testInsertionsortD :: d -> :::nil Rewrite Strategy: INNERMOST ---------------------------------------- (7) 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: #ABS_1 #LESS_2 INSERT_2 INSERT#1_2 INSERT#2_4 INSERTD_2 INSERTD#1_2 INSERTD#2_4 INSERTIONSORT_1 INSERTIONSORT#1_1 INSERTIONSORTD_1 INSERTIONSORTD#1_1 TESTINSERTIONSORT_1 TESTINSERTIONSORTD_1 TESTLIST_1 (c) The following functions are completely defined: #CKLT_1 #COMPARE_2 #cklt_1 #compare_2 #abs_1 #less_2 insert_2 insert#1_2 insert#2_4 insertD_2 insertD#1_2 insertD#2_4 insertionsort_1 insertionsort#1_1 insertionsortD_1 insertionsortD#1_1 testInsertionsort_1 testInsertionsortD_1 testList_1 Due to the following rules being added: #CKLT(v0) -> null_#CKLT [0] #COMPARE(v0, v1) -> null_#COMPARE [0] #cklt(v0) -> null_#cklt [0] #compare(v0, v1) -> null_#compare [0] #abs(v0) -> #0 [0] #less(v0, v1) -> null_#less [0] insert(v0, v1) -> nil [0] insert#1(v0, v1) -> nil [0] insert#2(v0, v1, v2, v3) -> nil [0] insertD(v0, v1) -> nil [0] insertD#1(v0, v1) -> nil [0] insertD#2(v0, v1, v2, v3) -> nil [0] insertionsort(v0) -> nil [0] insertionsort#1(v0) -> nil [0] insertionsortD(v0) -> nil [0] insertionsortD#1(v0) -> nil [0] testInsertionsort(v0) -> nil [0] testInsertionsortD(v0) -> nil [0] testList(v0) -> nil [0] And the following fresh constants: null_#CKLT, null_#COMPARE, null_#cklt, null_#compare, null_#less, const, const1, const2, const3, const4, const5, const6, const7, const8, const9, const10, const11 ---------------------------------------- (8) 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: #ABS(#0) -> c15 [1] #ABS(#neg(z0)) -> c16 [1] #ABS(#pos(z0)) -> c17 [1] #ABS(#s(z0)) -> c18 [1] #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) [1] INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) [1] INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) [1] INSERT#1(nil, z0) -> c22 [1] INSERT#2(#false, z0, z1, z2) -> c23 [1] INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) [1] INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) [1] INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) [1] INSERTD#1(nil, z0) -> c27 [1] INSERTD#2(#false, z0, z1, z2) -> c28 [1] INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) [1] INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) [1] INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) [1] INSERTIONSORT#1(nil) -> c32 [1] INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) [1] INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) [1] INSERTIONSORTD#1(nil) -> c35 [1] TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) [1] TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) [1] TESTLIST(z0) -> c38(#ABS(#0)) [1] TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) [1] TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) [1] TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) [1] TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) [1] TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) [1] TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) [1] TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) [1] TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) [1] TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) [1] #CKLT(#EQ) -> c [0] #CKLT(#GT) -> c1 [0] #CKLT(#LT) -> c2 [0] #COMPARE(#0, #0) -> c3 [0] #COMPARE(#0, #neg(z0)) -> c4 [0] #COMPARE(#0, #pos(z0)) -> c5 [0] #COMPARE(#0, #s(z0)) -> c6 [0] #COMPARE(#neg(z0), #0) -> c7 [0] #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) [0] #COMPARE(#neg(z0), #pos(z1)) -> c9 [0] #COMPARE(#pos(z0), #0) -> c10 [0] #COMPARE(#pos(z0), #neg(z1)) -> c11 [0] #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) [0] #COMPARE(#s(z0), #0) -> c13 [0] #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) [0] #cklt(#EQ) -> #false [0] #cklt(#GT) -> #false [0] #cklt(#LT) -> #true [0] #compare(#0, #0) -> #EQ [0] #compare(#0, #neg(z0)) -> #GT [0] #compare(#0, #pos(z0)) -> #LT [0] #compare(#0, #s(z0)) -> #LT [0] #compare(#neg(z0), #0) -> #LT [0] #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) [0] #compare(#neg(z0), #pos(z1)) -> #LT [0] #compare(#pos(z0), #0) -> #GT [0] #compare(#pos(z0), #neg(z1)) -> #GT [0] #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) [0] #compare(#s(z0), #0) -> #GT [0] #compare(#s(z0), #s(z1)) -> #compare(z0, z1) [0] #abs(#0) -> #0 [0] #abs(#neg(z0)) -> #pos(z0) [0] #abs(#pos(z0)) -> #pos(z0) [0] #abs(#s(z0)) -> #pos(#s(z0)) [0] #less(z0, z1) -> #cklt(#compare(z0, z1)) [0] insert(z0, z1) -> insert#1(z1, z0) [0] insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) [0] insert#1(nil, z0) -> ::(z0, nil) [0] insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) [0] insertD(z0, z1) -> insertD#1(z1, z0) [0] insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) [0] insertD#1(nil, z0) -> ::(z0, nil) [0] insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) [0] insertionsort(z0) -> insertionsort#1(z0) [0] insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) [0] insertionsort#1(nil) -> nil [0] insertionsortD(z0) -> insertionsortD#1(z0) [0] insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) [0] insertionsortD#1(nil) -> nil [0] testInsertionsort(z0) -> insertionsort(testList(#unit)) [0] testInsertionsortD(z0) -> insertionsortD(testList(#unit)) [0] testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) [0] #CKLT(v0) -> null_#CKLT [0] #COMPARE(v0, v1) -> null_#COMPARE [0] #cklt(v0) -> null_#cklt [0] #compare(v0, v1) -> null_#compare [0] #abs(v0) -> #0 [0] #less(v0, v1) -> null_#less [0] insert(v0, v1) -> nil [0] insert#1(v0, v1) -> nil [0] insert#2(v0, v1, v2, v3) -> nil [0] insertD(v0, v1) -> nil [0] insertD#1(v0, v1) -> nil [0] insertD#2(v0, v1, v2, v3) -> nil [0] insertionsort(v0) -> nil [0] insertionsort#1(v0) -> nil [0] insertionsortD(v0) -> nil [0] insertionsortD#1(v0) -> nil [0] testInsertionsort(v0) -> nil [0] testInsertionsortD(v0) -> nil [0] testList(v0) -> nil [0] The TRS has the following type information: #ABS :: #0:#neg:#pos:#s -> c15:c16:c17:c18 #0 :: #0:#neg:#pos:#s c15 :: c15:c16:c17:c18 #neg :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c16 :: c15:c16:c17:c18 #pos :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c17 :: c15:c16:c17:c18 #s :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c18 :: c15:c16:c17:c18 #LESS :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> c19 c19 :: c:c1:c2:null_#CKLT -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c19 #CKLT :: #EQ:#GT:#LT:null_#compare -> c:c1:c2:null_#CKLT #compare :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> #EQ:#GT:#LT:null_#compare #COMPARE :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE INSERT :: #0:#neg:#pos:#s -> :::nil -> c20 c20 :: c21:c22 -> c20 INSERT#1 :: :::nil -> #0:#neg:#pos:#s -> c21:c22 :: :: #0:#neg:#pos:#s -> :::nil -> :::nil c21 :: c23:c24 -> c19 -> c21:c22 INSERT#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> c23:c24 #less :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> #false:#true:null_#cklt:null_#less nil :: :::nil c22 :: c21:c22 #false :: #false:#true:null_#cklt:null_#less c23 :: c23:c24 #true :: #false:#true:null_#cklt:null_#less c24 :: c20 -> c23:c24 INSERTD :: #0:#neg:#pos:#s -> :::nil -> c25 c25 :: c26:c27 -> c25 INSERTD#1 :: :::nil -> #0:#neg:#pos:#s -> c26:c27 c26 :: c28:c29 -> c19 -> c26:c27 INSERTD#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> c28:c29 c27 :: c26:c27 c28 :: c28:c29 c29 :: c25 -> c28:c29 INSERTIONSORT :: :::nil -> c30 c30 :: c31:c32 -> c30 INSERTIONSORT#1 :: :::nil -> c31:c32 c31 :: c20 -> c30 -> c31:c32 insertionsort :: :::nil -> :::nil c32 :: c31:c32 INSERTIONSORTD :: :::nil -> c33 c33 :: c34:c35 -> c33 INSERTIONSORTD#1 :: :::nil -> c34:c35 c34 :: c25 -> c33 -> c34:c35 insertionsortD :: :::nil -> :::nil c35 :: c34:c35 TESTINSERTIONSORT :: a -> c36 c36 :: c30 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 -> c36 testList :: #unit -> :::nil #unit :: #unit TESTLIST :: #unit -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 TESTINSERTIONSORTD :: b -> c37 c37 :: c33 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 -> c37 c38 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c39 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c40 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c41 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c42 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c43 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c44 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c45 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c46 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c47 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 #EQ :: #EQ:#GT:#LT:null_#compare c :: c:c1:c2:null_#CKLT #GT :: #EQ:#GT:#LT:null_#compare c1 :: c:c1:c2:null_#CKLT #LT :: #EQ:#GT:#LT:null_#compare c2 :: c:c1:c2:null_#CKLT c3 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c4 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c5 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c6 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c7 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c8 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c9 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c10 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c11 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c12 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c13 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c14 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE #cklt :: #EQ:#GT:#LT:null_#compare -> #false:#true:null_#cklt:null_#less #abs :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s insert :: #0:#neg:#pos:#s -> :::nil -> :::nil insert#1 :: :::nil -> #0:#neg:#pos:#s -> :::nil insert#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> :::nil insertD :: #0:#neg:#pos:#s -> :::nil -> :::nil insertD#1 :: :::nil -> #0:#neg:#pos:#s -> :::nil insertD#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> :::nil insertionsort#1 :: :::nil -> :::nil insertionsortD#1 :: :::nil -> :::nil testInsertionsort :: c -> :::nil testInsertionsortD :: d -> :::nil null_#CKLT :: c:c1:c2:null_#CKLT null_#COMPARE :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE null_#cklt :: #false:#true:null_#cklt:null_#less null_#compare :: #EQ:#GT:#LT:null_#compare null_#less :: #false:#true:null_#cklt:null_#less const :: c19 const1 :: c20 const2 :: c25 const3 :: c30 const4 :: c33 const5 :: c36 const6 :: a const7 :: c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 const8 :: c37 const9 :: b const10 :: c const11 :: d Rewrite Strategy: INNERMOST ---------------------------------------- (9) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (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: #ABS(#0) -> c15 [1] #ABS(#neg(z0)) -> c16 [1] #ABS(#pos(z0)) -> c17 [1] #ABS(#s(z0)) -> c18 [1] #LESS(#0, #0) -> c19(#CKLT(#EQ), #COMPARE(#0, #0)) [1] #LESS(#0, #neg(z0')) -> c19(#CKLT(#GT), #COMPARE(#0, #neg(z0'))) [1] #LESS(#0, #pos(z0'')) -> c19(#CKLT(#LT), #COMPARE(#0, #pos(z0''))) [1] #LESS(#0, #s(z01)) -> c19(#CKLT(#LT), #COMPARE(#0, #s(z01))) [1] #LESS(#neg(z02), #0) -> c19(#CKLT(#LT), #COMPARE(#neg(z02), #0)) [1] #LESS(#neg(z03), #neg(z1')) -> c19(#CKLT(#compare(z1', z03)), #COMPARE(#neg(z03), #neg(z1'))) [1] #LESS(#neg(z04), #pos(z1'')) -> c19(#CKLT(#LT), #COMPARE(#neg(z04), #pos(z1''))) [1] #LESS(#pos(z05), #0) -> c19(#CKLT(#GT), #COMPARE(#pos(z05), #0)) [1] #LESS(#pos(z06), #neg(z11)) -> c19(#CKLT(#GT), #COMPARE(#pos(z06), #neg(z11))) [1] #LESS(#pos(z07), #pos(z12)) -> c19(#CKLT(#compare(z07, z12)), #COMPARE(#pos(z07), #pos(z12))) [1] #LESS(#s(z08), #0) -> c19(#CKLT(#GT), #COMPARE(#s(z08), #0)) [1] #LESS(#s(z09), #s(z13)) -> c19(#CKLT(#compare(z09, z13)), #COMPARE(#s(z09), #s(z13))) [1] #LESS(z0, z1) -> c19(#CKLT(null_#compare), #COMPARE(z0, z1)) [1] INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) [1] INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#cklt(#compare(z0, z2)), z2, z0, z1), #LESS(z0, z2)) [1] INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(null_#less, z2, z0, z1), #LESS(z0, z2)) [1] INSERT#1(nil, z0) -> c22 [1] INSERT#2(#false, z0, z1, z2) -> c23 [1] INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) [1] INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) [1] INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#cklt(#compare(z0, z2)), z2, z0, z1), #LESS(z0, z2)) [1] INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(null_#less, z2, z0, z1), #LESS(z0, z2)) [1] INSERTD#1(nil, z0) -> c27 [1] INSERTD#2(#false, z0, z1, z2) -> c28 [1] INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) [1] INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) [1] INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort#1(z1)), INSERTIONSORT(z1)) [1] INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, nil), INSERTIONSORT(z1)) [1] INSERTIONSORT#1(nil) -> c32 [1] INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) [1] INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD#1(z1)), INSERTIONSORTD(z1)) [1] INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, nil), INSERTIONSORTD(z1)) [1] INSERTIONSORTD#1(nil) -> c35 [1] TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil))))))))))), TESTLIST(#unit)) [1] TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(nil), TESTLIST(#unit)) [1] TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil))))))))))), TESTLIST(#unit)) [1] TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(nil), TESTLIST(#unit)) [1] TESTLIST(z0) -> c38(#ABS(#0)) [1] TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) [1] TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) [1] TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) [1] TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) [1] TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) [1] TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) [1] TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) [1] TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) [1] TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) [1] #CKLT(#EQ) -> c [0] #CKLT(#GT) -> c1 [0] #CKLT(#LT) -> c2 [0] #COMPARE(#0, #0) -> c3 [0] #COMPARE(#0, #neg(z0)) -> c4 [0] #COMPARE(#0, #pos(z0)) -> c5 [0] #COMPARE(#0, #s(z0)) -> c6 [0] #COMPARE(#neg(z0), #0) -> c7 [0] #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) [0] #COMPARE(#neg(z0), #pos(z1)) -> c9 [0] #COMPARE(#pos(z0), #0) -> c10 [0] #COMPARE(#pos(z0), #neg(z1)) -> c11 [0] #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) [0] #COMPARE(#s(z0), #0) -> c13 [0] #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) [0] #cklt(#EQ) -> #false [0] #cklt(#GT) -> #false [0] #cklt(#LT) -> #true [0] #compare(#0, #0) -> #EQ [0] #compare(#0, #neg(z0)) -> #GT [0] #compare(#0, #pos(z0)) -> #LT [0] #compare(#0, #s(z0)) -> #LT [0] #compare(#neg(z0), #0) -> #LT [0] #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) [0] #compare(#neg(z0), #pos(z1)) -> #LT [0] #compare(#pos(z0), #0) -> #GT [0] #compare(#pos(z0), #neg(z1)) -> #GT [0] #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) [0] #compare(#s(z0), #0) -> #GT [0] #compare(#s(z0), #s(z1)) -> #compare(z0, z1) [0] #abs(#0) -> #0 [0] #abs(#neg(z0)) -> #pos(z0) [0] #abs(#pos(z0)) -> #pos(z0) [0] #abs(#s(z0)) -> #pos(#s(z0)) [0] #less(#0, #0) -> #cklt(#EQ) [0] #less(#0, #neg(z010)) -> #cklt(#GT) [0] #less(#0, #pos(z011)) -> #cklt(#LT) [0] #less(#0, #s(z012)) -> #cklt(#LT) [0] #less(#neg(z013), #0) -> #cklt(#LT) [0] #less(#neg(z014), #neg(z14)) -> #cklt(#compare(z14, z014)) [0] #less(#neg(z015), #pos(z15)) -> #cklt(#LT) [0] #less(#pos(z016), #0) -> #cklt(#GT) [0] #less(#pos(z017), #neg(z16)) -> #cklt(#GT) [0] #less(#pos(z018), #pos(z17)) -> #cklt(#compare(z018, z17)) [0] #less(#s(z019), #0) -> #cklt(#GT) [0] #less(#s(z020), #s(z18)) -> #cklt(#compare(z020, z18)) [0] #less(z0, z1) -> #cklt(null_#compare) [0] insert(z0, z1) -> insert#1(z1, z0) [0] insert#1(::(z0, z1), z2) -> insert#2(#cklt(#compare(z0, z2)), z2, z0, z1) [0] insert#1(::(z0, z1), z2) -> insert#2(null_#less, z2, z0, z1) [0] insert#1(nil, z0) -> ::(z0, nil) [0] insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) [0] insertD(z0, z1) -> insertD#1(z1, z0) [0] insertD#1(::(z0, z1), z2) -> insertD#2(#cklt(#compare(z0, z2)), z2, z0, z1) [0] insertD#1(::(z0, z1), z2) -> insertD#2(null_#less, z2, z0, z1) [0] insertD#1(nil, z0) -> ::(z0, nil) [0] insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) [0] insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) [0] insertionsort(z0) -> insertionsort#1(z0) [0] insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort#1(z1)) [0] insertionsort#1(::(z0, z1)) -> insert(z0, nil) [0] insertionsort#1(nil) -> nil [0] insertionsortD(z0) -> insertionsortD#1(z0) [0] insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD#1(z1)) [0] insertionsortD#1(::(z0, z1)) -> insertD(z0, nil) [0] insertionsortD#1(nil) -> nil [0] testInsertionsort(z0) -> insertionsort(::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil))))))))))) [0] testInsertionsort(z0) -> insertionsort(nil) [0] testInsertionsortD(z0) -> insertionsortD(::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil))))))))))) [0] testInsertionsortD(z0) -> insertionsortD(nil) [0] testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) [0] #CKLT(v0) -> null_#CKLT [0] #COMPARE(v0, v1) -> null_#COMPARE [0] #cklt(v0) -> null_#cklt [0] #compare(v0, v1) -> null_#compare [0] #abs(v0) -> #0 [0] #less(v0, v1) -> null_#less [0] insert(v0, v1) -> nil [0] insert#1(v0, v1) -> nil [0] insert#2(v0, v1, v2, v3) -> nil [0] insertD(v0, v1) -> nil [0] insertD#1(v0, v1) -> nil [0] insertD#2(v0, v1, v2, v3) -> nil [0] insertionsort(v0) -> nil [0] insertionsort#1(v0) -> nil [0] insertionsortD(v0) -> nil [0] insertionsortD#1(v0) -> nil [0] testInsertionsort(v0) -> nil [0] testInsertionsortD(v0) -> nil [0] testList(v0) -> nil [0] The TRS has the following type information: #ABS :: #0:#neg:#pos:#s -> c15:c16:c17:c18 #0 :: #0:#neg:#pos:#s c15 :: c15:c16:c17:c18 #neg :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c16 :: c15:c16:c17:c18 #pos :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c17 :: c15:c16:c17:c18 #s :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s c18 :: c15:c16:c17:c18 #LESS :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> c19 c19 :: c:c1:c2:null_#CKLT -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c19 #CKLT :: #EQ:#GT:#LT:null_#compare -> c:c1:c2:null_#CKLT #compare :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> #EQ:#GT:#LT:null_#compare #COMPARE :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE INSERT :: #0:#neg:#pos:#s -> :::nil -> c20 c20 :: c21:c22 -> c20 INSERT#1 :: :::nil -> #0:#neg:#pos:#s -> c21:c22 :: :: #0:#neg:#pos:#s -> :::nil -> :::nil c21 :: c23:c24 -> c19 -> c21:c22 INSERT#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> c23:c24 #less :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> #false:#true:null_#cklt:null_#less nil :: :::nil c22 :: c21:c22 #false :: #false:#true:null_#cklt:null_#less c23 :: c23:c24 #true :: #false:#true:null_#cklt:null_#less c24 :: c20 -> c23:c24 INSERTD :: #0:#neg:#pos:#s -> :::nil -> c25 c25 :: c26:c27 -> c25 INSERTD#1 :: :::nil -> #0:#neg:#pos:#s -> c26:c27 c26 :: c28:c29 -> c19 -> c26:c27 INSERTD#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> c28:c29 c27 :: c26:c27 c28 :: c28:c29 c29 :: c25 -> c28:c29 INSERTIONSORT :: :::nil -> c30 c30 :: c31:c32 -> c30 INSERTIONSORT#1 :: :::nil -> c31:c32 c31 :: c20 -> c30 -> c31:c32 insertionsort :: :::nil -> :::nil c32 :: c31:c32 INSERTIONSORTD :: :::nil -> c33 c33 :: c34:c35 -> c33 INSERTIONSORTD#1 :: :::nil -> c34:c35 c34 :: c25 -> c33 -> c34:c35 insertionsortD :: :::nil -> :::nil c35 :: c34:c35 TESTINSERTIONSORT :: a -> c36 c36 :: c30 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 -> c36 testList :: #unit -> :::nil #unit :: #unit TESTLIST :: #unit -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 TESTINSERTIONSORTD :: b -> c37 c37 :: c33 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 -> c37 c38 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c39 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c40 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c41 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c42 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c43 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c44 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c45 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c46 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 c47 :: c15:c16:c17:c18 -> c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 #EQ :: #EQ:#GT:#LT:null_#compare c :: c:c1:c2:null_#CKLT #GT :: #EQ:#GT:#LT:null_#compare c1 :: c:c1:c2:null_#CKLT #LT :: #EQ:#GT:#LT:null_#compare c2 :: c:c1:c2:null_#CKLT c3 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c4 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c5 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c6 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c7 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c8 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c9 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c10 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c11 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c12 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c13 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE c14 :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE -> c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE #cklt :: #EQ:#GT:#LT:null_#compare -> #false:#true:null_#cklt:null_#less #abs :: #0:#neg:#pos:#s -> #0:#neg:#pos:#s insert :: #0:#neg:#pos:#s -> :::nil -> :::nil insert#1 :: :::nil -> #0:#neg:#pos:#s -> :::nil insert#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> :::nil insertD :: #0:#neg:#pos:#s -> :::nil -> :::nil insertD#1 :: :::nil -> #0:#neg:#pos:#s -> :::nil insertD#2 :: #false:#true:null_#cklt:null_#less -> #0:#neg:#pos:#s -> #0:#neg:#pos:#s -> :::nil -> :::nil insertionsort#1 :: :::nil -> :::nil insertionsortD#1 :: :::nil -> :::nil testInsertionsort :: c -> :::nil testInsertionsortD :: d -> :::nil null_#CKLT :: c:c1:c2:null_#CKLT null_#COMPARE :: c3:c4:c5:c6:c7:c8:c9:c10:c11:c12:c13:c14:null_#COMPARE null_#cklt :: #false:#true:null_#cklt:null_#less null_#compare :: #EQ:#GT:#LT:null_#compare null_#less :: #false:#true:null_#cklt:null_#less const :: c19 const1 :: c20 const2 :: c25 const3 :: c30 const4 :: c33 const5 :: c36 const6 :: a const7 :: c38:c39:c40:c41:c42:c43:c44:c45:c46:c47 const8 :: c37 const9 :: b const10 :: c const11 :: d Rewrite Strategy: INNERMOST ---------------------------------------- (11) 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 c15 => 0 c16 => 1 c17 => 2 c18 => 3 nil => 0 c22 => 0 #false => 1 c23 => 0 #true => 2 c27 => 0 c28 => 0 c32 => 0 c35 => 0 #unit => 0 #EQ => 1 c => 1 #GT => 2 c1 => 2 #LT => 3 c2 => 3 c3 => 3 c4 => 4 c5 => 5 c6 => 6 c7 => 7 c9 => 8 c10 => 0 c11 => 1 c13 => 2 null_#CKLT => 0 null_#COMPARE => 0 null_#cklt => 0 null_#compare => 0 null_#less => 0 const => 0 const1 => 0 const2 => 0 const3 => 0 const4 => 0 const5 => 0 const6 => 0 const7 => 0 const8 => 0 const9 => 0 const10 => 0 const11 => 0 ---------------------------------------- (12) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 2 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 1 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #COMPARE(z, z') -{ 0 }-> 8 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #COMPARE(z, z') -{ 0 }-> 7 :|: z = 1 + z0, z0 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z0 >= 0, z' = 1 + z0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z0 >= 0, z' = 1 + z0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z0 >= 0, z' = 1 + z0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z = 1 + z0, z0 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #COMPARE(z, z') -{ 0 }-> 0 :|: z = 1 + z0, z0 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z1, z0) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #LESS(z, z') -{ 1 }-> 1 + #CKLT(3) + #COMPARE(0, 1 + z0'') :|: z' = 1 + z0'', z0'' >= 0, z = 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(3) + #COMPARE(0, 1 + z01) :|: z01 >= 0, z' = 1 + z01, z = 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(3) + #COMPARE(1 + z02, 0) :|: z = 1 + z02, z02 >= 0, z' = 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(3) + #COMPARE(1 + z04, 1 + z1'') :|: z04 >= 0, z' = 1 + z1'', z = 1 + z04, z1'' >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(2) + #COMPARE(0, 1 + z0') :|: z0' >= 0, z = 0, z' = 1 + z0' #LESS(z, z') -{ 1 }-> 1 + #CKLT(2) + #COMPARE(1 + z05, 0) :|: z05 >= 0, z = 1 + z05, z' = 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(2) + #COMPARE(1 + z06, 1 + z11) :|: z' = 1 + z11, z11 >= 0, z06 >= 0, z = 1 + z06 #LESS(z, z') -{ 1 }-> 1 + #CKLT(2) + #COMPARE(1 + z08, 0) :|: z08 >= 0, z = 1 + z08, z' = 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(1) + #COMPARE(0, 0) :|: z = 0, z' = 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(0) + #COMPARE(z0, z1) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z07, z12)) + #COMPARE(1 + z07, 1 + z12) :|: z' = 1 + z12, z07 >= 0, z = 1 + z07, z12 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z09, z13)) + #COMPARE(1 + z09, 1 + z13) :|: z' = 1 + z13, z = 1 + z09, z09 >= 0, z13 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z1', z03)) + #COMPARE(1 + z03, 1 + z1') :|: z' = 1 + z1', z1' >= 0, z = 1 + z03, z03 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #abs(z) -{ 0 }-> 1 + z0 :|: z = 1 + z0, z0 >= 0 #abs(z) -{ 0 }-> 1 + (1 + z0) :|: z = 1 + z0, z0 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #compare(z, z') -{ 0 }-> 3 :|: z0 >= 0, z' = 1 + z0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z = 1 + z0, z0 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #compare(z, z') -{ 0 }-> 2 :|: z0 >= 0, z' = 1 + z0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z = 1 + z0, z0 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 #compare(z, z') -{ 0 }-> #compare(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #compare(z, z') -{ 0 }-> #compare(z1, z0) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #less(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 #less(z, z') -{ 0 }-> #cklt(3) :|: z011 >= 0, z' = 1 + z011, z = 0 #less(z, z') -{ 0 }-> #cklt(3) :|: z' = 1 + z012, z012 >= 0, z = 0 #less(z, z') -{ 0 }-> #cklt(3) :|: z = 1 + z013, z013 >= 0, z' = 0 #less(z, z') -{ 0 }-> #cklt(3) :|: z015 >= 0, z15 >= 0, z = 1 + z015, z' = 1 + z15 #less(z, z') -{ 0 }-> #cklt(2) :|: z = 0, z' = 1 + z010, z010 >= 0 #less(z, z') -{ 0 }-> #cklt(2) :|: z = 1 + z016, z016 >= 0, z' = 0 #less(z, z') -{ 0 }-> #cklt(2) :|: z = 1 + z017, z' = 1 + z16, z16 >= 0, z017 >= 0 #less(z, z') -{ 0 }-> #cklt(2) :|: z019 >= 0, z = 1 + z019, z' = 0 #less(z, z') -{ 0 }-> #cklt(1) :|: z = 0, z' = 0 #less(z, z') -{ 0 }-> #cklt(0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z018, z17)) :|: z' = 1 + z17, z17 >= 0, z = 1 + z018, z018 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z020, z18)) :|: z18 >= 0, z' = 1 + z18, z = 1 + z020, z020 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z14, z014)) :|: z' = 1 + z14, z = 1 + z014, z014 >= 0, z14 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z0 >= 0, z = 0, z' = z0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z2)), z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z0 >= 0, z = 0, z' = z0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z2)), z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z0) :|: z = z0, z0 >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z0) :|: z = z0, z0 >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT(0) + TESTLIST(0) :|: z = z0, z0 >= 0 TESTINSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + TESTLIST(0) :|: z = z0, z0 >= 0 TESTINSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD(0) + TESTLIST(0) :|: z = z0, z0 >= 0 TESTINSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + TESTLIST(0) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(0) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + 0)) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + 0))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + 0)))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + 0))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z = z0, z0 >= 0 insert(z, z') -{ 0 }-> insert#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 insert(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insert#1(z, z') -{ 0 }-> insert#2(0, z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z2)), z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insert#1(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insert#1(z, z') -{ 0 }-> 1 + z0 + 0 :|: z0 >= 0, z = 0, z' = z0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, z3 = v3, v2 >= 0, v3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z0 + (1 + z1 + z2) :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z1 + insert(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insertD(z, z') -{ 0 }-> insertD#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 insertD(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insertD#1(z, z') -{ 0 }-> insertD#2(0, z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z2)), z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insertD#1(z, z') -{ 0 }-> 1 + z0 + 0 :|: z0 >= 0, z = 0, z' = z0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, z3 = v3, v2 >= 0, v3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z0 + (1 + z1 + z2) :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z1 + insertD(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insertionsort(z) -{ 0 }-> insertionsort#1(z0) :|: z = z0, z0 >= 0 insertionsort(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z0) :|: z = z0, z0 >= 0 insertionsortD(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z = z0, z0 >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z = z0, z0 >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z = z0, z0 >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z = z0, z0 >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testList(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z = z0, z0 >= 0 ---------------------------------------- (13) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: #ABS(z) -{ 1 }-> 3 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 2 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #ABS(z) -{ 1 }-> 1 :|: z = 1 + z0, z0 >= 0 #CKLT(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 2 :|: z = 3 TESTLIST(z) -{ 1 }-> 1 + #ABS(0) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + 0))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + 0))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + 0)))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z = z0, z0 >= 0 TESTLIST(z) -{ 1 }-> 1 + #ABS(1 + (1 + 0)) :|: z = z0, z0 >= 0 ---------------------------------------- (14) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 2 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 1 :|: z = 1 + z0, z0 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #COMPARE(z, z') -{ 0 }-> 8 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #COMPARE(z, z') -{ 0 }-> 7 :|: z = 1 + z0, z0 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z0 >= 0, z' = 1 + z0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z0 >= 0, z' = 1 + z0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z0 >= 0, z' = 1 + z0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z = 1 + z0, z0 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #COMPARE(z, z') -{ 0 }-> 0 :|: z = 1 + z0, z0 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z1, z0) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + z0'') :|: z' = 1 + z0'', z0'' >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + z01) :|: z01 >= 0, z' = 1 + z01, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + z02, 0) :|: z = 1 + z02, z02 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + z04, 1 + z1'') :|: z04 >= 0, z' = 1 + z1'', z = 1 + z04, z1'' >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + z0') :|: z0' >= 0, z = 0, z' = 1 + z0', 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + z05, 0) :|: z05 >= 0, z = 1 + z05, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + z06, 1 + z11) :|: z' = 1 + z11, z11 >= 0, z06 >= 0, z = 1 + z06, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + z08, 0) :|: z08 >= 0, z = 1 + z08, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z0, z1) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + z0') :|: z0' >= 0, z = 0, z' = 1 + z0', v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + z0'') :|: z' = 1 + z0'', z0'' >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + z01) :|: z01 >= 0, z' = 1 + z01, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + z02, 0) :|: z = 1 + z02, z02 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + z04, 1 + z1'') :|: z04 >= 0, z' = 1 + z1'', z = 1 + z04, z1'' >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + z05, 0) :|: z05 >= 0, z = 1 + z05, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + z06, 1 + z11) :|: z' = 1 + z11, z11 >= 0, z06 >= 0, z = 1 + z06, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + z08, 0) :|: z08 >= 0, z = 1 + z08, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z07, z12)) + #COMPARE(1 + z07, 1 + z12) :|: z' = 1 + z12, z07 >= 0, z = 1 + z07, z12 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z09, z13)) + #COMPARE(1 + z09, 1 + z13) :|: z' = 1 + z13, z = 1 + z09, z09 >= 0, z13 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z1', z03)) + #COMPARE(1 + z03, 1 + z1') :|: z' = 1 + z1', z1' >= 0, z = 1 + z03, z03 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #abs(z) -{ 0 }-> 1 + z0 :|: z = 1 + z0, z0 >= 0 #abs(z) -{ 0 }-> 1 + (1 + z0) :|: z = 1 + z0, z0 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 #compare(z, z') -{ 0 }-> 3 :|: z0 >= 0, z' = 1 + z0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z = 1 + z0, z0 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #compare(z, z') -{ 0 }-> 2 :|: z0 >= 0, z' = 1 + z0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z = 1 + z0, z0 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 #compare(z, z') -{ 0 }-> #compare(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #compare(z, z') -{ 0 }-> #compare(z1, z0) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 #less(z, z') -{ 0 }-> 2 :|: z011 >= 0, z' = 1 + z011, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z' = 1 + z012, z012 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z = 1 + z013, z013 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z015 >= 0, z15 >= 0, z = 1 + z015, z' = 1 + z15, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 1 + z010, z010 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z = 1 + z016, z016 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z = 1 + z017, z' = 1 + z16, z16 >= 0, z017 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z019 >= 0, z = 1 + z019, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 1 + z010, z010 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z011 >= 0, z' = 1 + z011, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z' = 1 + z012, z012 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 1 + z013, z013 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z015 >= 0, z15 >= 0, z = 1 + z015, z' = 1 + z15, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 1 + z016, z016 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 1 + z017, z' = 1 + z16, z16 >= 0, z017 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z019 >= 0, z = 1 + z019, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z018, z17)) :|: z' = 1 + z17, z17 >= 0, z = 1 + z018, z018 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z020, z18)) :|: z18 >= 0, z' = 1 + z18, z = 1 + z020, z020 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z14, z014)) :|: z' = 1 + z14, z = 1 + z014, z014 >= 0, z14 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z0 >= 0, z = 0, z' = z0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z2)), z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z0 >= 0, z = 0, z' = z0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z2)), z2, z0, z1) + #LESS(z0, z2) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z0) :|: z = z0, z0 >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z0) :|: z = z0, z0 >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(0)) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + 0))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(0)) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + 0))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z = z0, z0 >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z = z0, z0 >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z = z0, z0 >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 insert(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insert#1(z, z') -{ 0 }-> insert#2(0, z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z2)), z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insert#1(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insert#1(z, z') -{ 0 }-> 1 + z0 + 0 :|: z0 >= 0, z = 0, z' = z0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, z3 = v3, v2 >= 0, v3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z0 + (1 + z1 + z2) :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z1 + insert(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insertD(z, z') -{ 0 }-> insertD#1(z1, z0) :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 insertD(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insertD#1(z, z') -{ 0 }-> insertD#2(0, z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z2)), z2, z0, z1) :|: z1 >= 0, z' = z2, z0 >= 0, z = 1 + z0 + z1, z2 >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 insertD#1(z, z') -{ 0 }-> 1 + z0 + 0 :|: z0 >= 0, z = 0, z' = z0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, z3 = v3, v2 >= 0, v3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z0 + (1 + z1 + z2) :|: z1 >= 0, z = 1, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z1 + insertD(z0, z2) :|: z = 2, z1 >= 0, z0 >= 0, z3 = z2, z' = z0, z2 >= 0, z'' = z1 insertionsort(z) -{ 0 }-> insertionsort#1(z0) :|: z = z0, z0 >= 0 insertionsort(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z0) :|: z = z0, z0 >= 0 insertionsortD(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z = z0, z0 >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z = z0, z0 >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z = z0, z0 >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z = z0, z0 >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testList(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z = z0, z0 >= 0 ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 ---------------------------------------- (17) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { #ABS } { #cklt } { #compare } { #CKLT } { #COMPARE } { TESTLIST } { #abs } { #less } { insert#2, insert, insert#1 } { insertD#2, insertD#1, insertD } { #LESS } { testList } { insertionsort#1 } { insertionsortD#1 } { INSERTD#2, INSERTD#1, INSERTD } { INSERT#1, INSERT#2, INSERT } { insertionsort } { INSERTIONSORT, INSERTIONSORT#1 } { insertionsortD } { INSERTIONSORTD, INSERTIONSORTD#1 } { testInsertionsort } { TESTINSERTIONSORT } { testInsertionsortD } { TESTINSERTIONSORTD } ---------------------------------------- (18) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#ABS}, {#cklt}, {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#ABS}, {#cklt}, {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} ---------------------------------------- (21) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #ABS 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#ABS}, {#cklt}, {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: ?, size: O(1) [3] ---------------------------------------- (23) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #ABS after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (24) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 2 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(0) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(0)) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + 0))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + 0)))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + 0))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + 0)))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + 0))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 2 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + #ABS(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))))) :|: z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#cklt}, {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#cklt}, {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] ---------------------------------------- (27) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #cklt after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 2 ---------------------------------------- (28) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#cklt}, {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: ?, size: O(1) [2] ---------------------------------------- (29) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #cklt 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] ---------------------------------------- (33) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #compare after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 3 ---------------------------------------- (34) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#compare}, {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: ?, size: O(1) [3] ---------------------------------------- (35) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #compare after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (36) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z - 1, z' - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(#compare(z' - 1, z - 1)) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #compare(z, z') -{ 0 }-> #compare(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> #compare(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #less(z, z') -{ 0 }-> #cklt(#compare(z - 1, z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> #cklt(#compare(z' - 1, z - 1)) :|: z - 1 >= 0, z' - 1 >= 0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(#cklt(#compare(z0, z')), z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(#cklt(#compare(z0, z')), z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(s40) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(s41) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] ---------------------------------------- (39) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #CKLT after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 3 ---------------------------------------- (40) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(s40) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(s41) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#CKLT}, {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: ?, size: O(1) [3] ---------------------------------------- (41) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #CKLT 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(s40) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + #CKLT(s41) + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] ---------------------------------------- (45) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #COMPARE after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 8 + z + z' ---------------------------------------- (46) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#COMPARE}, {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: ?, size: O(n^1) [8 + z + z'] ---------------------------------------- (47) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #COMPARE 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + #COMPARE(z' - 1, z - 1) :|: z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + #COMPARE(0, 0) :|: z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(z, z') :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 0) :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + #COMPARE(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] ---------------------------------------- (51) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: TESTLIST after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 4 ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {TESTLIST}, {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: ?, size: O(1) [4] ---------------------------------------- (53) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: TESTLIST after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 2 ---------------------------------------- (54) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] ---------------------------------------- (57) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #abs after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#abs}, {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: ?, size: O(n^1) [1 + z] ---------------------------------------- (59) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #abs after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (60) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s) :|: s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s') :|: s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s'') :|: s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s1) :|: s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s2) :|: s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s3) :|: s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s4) :|: s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s5) :|: s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s6) :|: s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s7) :|: s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s18) :|: s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s19) :|: s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s20) :|: s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s21) :|: s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s22) :|: s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s23) :|: s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s24) :|: s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s25) :|: s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s26) :|: s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) + (1 + s27) :|: s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0)))))))))) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + #abs(0) + (1 + #abs(1 + (1 + (1 + (1 + (1 + 0))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + (1 + #abs(1 + (1 + 0)) + (1 + #abs(1 + (1 + (1 + 0))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + (1 + #abs(1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + (1 + #abs(1 + (1 + (1 + (1 + 0)))) + 0))))))))) :|: z >= 0 Function symbols to be analyzed: {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #less after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 2 ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {#less}, {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: ?, size: O(1) [2] ---------------------------------------- (65) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #less after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (66) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] ---------------------------------------- (69) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: insert#2 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z' + z'' + z3 Computed SIZE bound using CoFloCo for: insert after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z + z' Computed SIZE bound using CoFloCo for: insert#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z + z' ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insert#2,insert,insert#1}, {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: ?, size: O(n^1) [2 + z' + z'' + z3] insert: runtime: ?, size: O(n^1) [1 + z + z'] insert#1: runtime: ?, size: O(n^1) [1 + z + z'] ---------------------------------------- (71) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: insert#2 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 Computed RUNTIME bound using CoFloCo for: insert after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 Computed RUNTIME bound using CoFloCo for: insert#1 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (72) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> insert#1(z', z) :|: z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(s51, z', z0, z1) :|: s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> insert#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insert(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: insertD#2 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z' + z'' + z3 Computed SIZE bound using CoFloCo for: insertD#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z + z' Computed SIZE bound using CoFloCo for: insertD after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z + z' ---------------------------------------- (76) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertD#2,insertD#1,insertD}, {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: ?, size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: ?, size: O(n^1) [1 + z + z'] insertD: runtime: ?, size: O(n^1) [1 + z + z'] ---------------------------------------- (77) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: insertD#2 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 Computed RUNTIME bound using CoFloCo for: insertD#1 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 Computed RUNTIME bound using CoFloCo for: insertD after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (78) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> insertD#1(z', z) :|: z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(s53, z', z0, z1) :|: s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> insertD#2(0, z', z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + insertD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, 0) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] ---------------------------------------- (81) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: #LESS after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 12 + z + z' ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {#LESS}, {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: ?, size: O(n^1) [12 + z + z'] ---------------------------------------- (83) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: #LESS after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (84) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(s43, z', z0, z1) + #LESS(z0, z') :|: s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 1 }-> 1 + INSERT#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(s45, z', z0, z1) + #LESS(z0, z') :|: s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 1 }-> 1 + INSERTD#2(0, z', z0, z1) + #LESS(z0, z') :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + 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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] ---------------------------------------- (87) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: testList after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 74 ---------------------------------------- (88) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testList}, {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: ?, size: O(1) [74] ---------------------------------------- (89) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: testList after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (90) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] ---------------------------------------- (93) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: insertionsort#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (94) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsort#1}, {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: ?, size: O(n^1) [z] ---------------------------------------- (95) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: insertionsort#1 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (96) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, insertionsort#1(z1)) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> insertionsort#1(z) :|: z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> insert(z0, insertionsort#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (99) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: insertionsortD#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (100) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsortD#1}, {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: ?, size: O(n^1) [z] ---------------------------------------- (101) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: insertionsortD#1 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (102) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, insertionsortD#1(z1)) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> insertionsortD#1(z) :|: z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> insertD(z0, insertionsortD#1(z1)) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, s323) + INSERTIONSORTD(z1) :|: s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (105) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: INSERTD#2 after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 2 + z'*z3 + 14*z3 + z3^2 Computed SIZE bound using KoAT for: INSERTD#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 28 + 30*z + 2*z*z' + 2*z^2 + 2*z' Computed SIZE bound using KoAT for: INSERTD after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 29 + 2*z + 2*z*z' + 30*z' + 2*z'^2 ---------------------------------------- (106) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, s323) + INSERTIONSORTD(z1) :|: s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTD#2,INSERTD#1,INSERTD}, {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: ?, size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: ?, size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: ?, size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] ---------------------------------------- (107) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: INSERTD#2 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + 4*z3 Computed RUNTIME bound using CoFloCo for: INSERTD#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + 4*z Computed RUNTIME bound using CoFloCo for: INSERTD after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + 4*z' ---------------------------------------- (108) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 1 }-> 1 + INSERTD#1(z', z) :|: z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(s45, z', z0, z1) + s318 :|: s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 2 }-> 1 + INSERTD#2(0, z', z0, z1) + s316 :|: s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 1 + INSERTD(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, s323) + INSERTIONSORTD(z1) :|: s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 1 }-> 1 + INSERTD(z0, 0) + INSERTIONSORTD(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] ---------------------------------------- (111) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: INSERT#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 78*z + 6*z*z' + 6*z^2 Computed SIZE bound using KoAT for: INSERT#2 after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 2 + 6*z'*z3 + 78*z3 + 6*z3^2 Computed SIZE bound using KoAT for: INSERT after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 1 + 6*z*z' + 78*z' + 6*z'^2 ---------------------------------------- (112) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERT#1,INSERT#2,INSERT}, {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: ?, size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: ?, size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: ?, size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] ---------------------------------------- (113) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: INSERT#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 7 + 4*z Computed RUNTIME bound using CoFloCo for: INSERT#2 after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 9 + 4*z3 Computed RUNTIME bound using CoFloCo for: INSERT after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 8 + 4*z' ---------------------------------------- (114) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 1 }-> 1 + INSERT#1(z', z) :|: z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(s43, z', z0, z1) + s317 :|: s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 2 }-> 1 + INSERT#2(0, z', z0, z1) + s315 :|: s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 1 + INSERT(z', z3) :|: z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, s319) + INSERTIONSORT(z1) :|: s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 1 }-> 1 + INSERT(z0, 0) + INSERTIONSORT(z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] ---------------------------------------- (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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 9 + 4*s319 }-> 1 + s336 + INSERTIONSORT(z1) :|: s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 9 }-> 1 + s337 + INSERTIONSORT(z1) :|: s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] ---------------------------------------- (117) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: insertionsort after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (118) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 9 + 4*s319 }-> 1 + s336 + INSERTIONSORT(z1) :|: s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 9 }-> 1 + s337 + INSERTIONSORT(z1) :|: s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsort}, {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: ?, size: O(n^1) [z] ---------------------------------------- (119) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: insertionsort after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (120) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 9 + 4*s319 }-> 1 + s336 + INSERTIONSORT(z1) :|: s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 9 }-> 1 + s337 + INSERTIONSORT(z1) :|: s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(0) :|: z >= 0 testInsertionsort(z) -{ 0 }-> insertionsort(1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0)))))))))) :|: s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [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: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 9 + 4*s319 }-> 1 + s336 + INSERTIONSORT(z1) :|: s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 9 }-> 1 + s337 + INSERTIONSORT(z1) :|: s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (123) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: INSERTIONSORT after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? Computed SIZE bound using CoFloCo for: INSERTIONSORT#1 after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (124) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 9 + 4*s319 }-> 1 + s336 + INSERTIONSORT(z1) :|: s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 9 }-> 1 + s337 + INSERTIONSORT(z1) :|: s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTIONSORT,INSERTIONSORT#1}, {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: ?, size: INF INSERTIONSORT#1: runtime: ?, size: INF ---------------------------------------- (125) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: INSERTIONSORT after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 2 + 10*z + 4*z^2 Computed RUNTIME bound using KoAT for: INSERTIONSORT#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 23 + 24*z + 8*z^2 ---------------------------------------- (126) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 1 }-> 1 + INSERTIONSORT#1(z) :|: z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 9 + 4*s319 }-> 1 + s336 + INSERTIONSORT(z1) :|: s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 9 }-> 1 + s337 + INSERTIONSORT(z1) :|: s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s10) :|: s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s11) :|: s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s12) :|: s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s13) :|: s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s14) :|: s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s15) :|: s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s16) :|: s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s17) :|: s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s8) :|: s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(0) + (1 + s9) :|: s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s105 + (1 + s106 + (1 + s107 + (1 + s108 + (1 + s109 + (1 + s110 + (1 + s111 + (1 + s112 + (1 + s113 + (1 + s114 + 0)))))))))) + (1 + s) :|: s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s115 + (1 + s116 + (1 + s117 + (1 + s118 + (1 + s119 + (1 + s120 + (1 + s121 + (1 + s122 + (1 + s123 + (1 + s124 + 0)))))))))) + (1 + s') :|: s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s125 + (1 + s126 + (1 + s127 + (1 + s128 + (1 + s129 + (1 + s130 + (1 + s131 + (1 + s132 + (1 + s133 + (1 + s134 + 0)))))))))) + (1 + s'') :|: s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s135 + (1 + s136 + (1 + s137 + (1 + s138 + (1 + s139 + (1 + s140 + (1 + s141 + (1 + s142 + (1 + s143 + (1 + s144 + 0)))))))))) + (1 + s1) :|: s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s145 + (1 + s146 + (1 + s147 + (1 + s148 + (1 + s149 + (1 + s150 + (1 + s151 + (1 + s152 + (1 + s153 + (1 + s154 + 0)))))))))) + (1 + s2) :|: s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s155 + (1 + s156 + (1 + s157 + (1 + s158 + (1 + s159 + (1 + s160 + (1 + s161 + (1 + s162 + (1 + s163 + (1 + s164 + 0)))))))))) + (1 + s3) :|: s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s165 + (1 + s166 + (1 + s167 + (1 + s168 + (1 + s169 + (1 + s170 + (1 + s171 + (1 + s172 + (1 + s173 + (1 + s174 + 0)))))))))) + (1 + s4) :|: s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s175 + (1 + s176 + (1 + s177 + (1 + s178 + (1 + s179 + (1 + s180 + (1 + s181 + (1 + s182 + (1 + s183 + (1 + s184 + 0)))))))))) + (1 + s5) :|: s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s185 + (1 + s186 + (1 + s187 + (1 + s188 + (1 + s189 + (1 + s190 + (1 + s191 + (1 + s192 + (1 + s193 + (1 + s194 + 0)))))))))) + (1 + s6) :|: s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 3 }-> 1 + INSERTIONSORT(1 + s195 + (1 + s196 + (1 + s197 + (1 + s198 + (1 + s199 + (1 + s200 + (1 + s201 + (1 + s202 + (1 + s203 + (1 + s204 + 0)))))))))) + (1 + s7) :|: s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF ---------------------------------------- (127) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (128) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF ---------------------------------------- (129) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: insertionsortD after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (130) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {insertionsortD}, {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: ?, size: O(n^1) [z] ---------------------------------------- (131) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: insertionsortD after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (132) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(0) :|: z >= 0 testInsertionsortD(z) -{ 0 }-> insertionsortD(1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0)))))))))) :|: s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (133) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (134) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (135) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: INSERTIONSORTD after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? Computed SIZE bound using CoFloCo for: INSERTIONSORTD#1 after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (136) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {INSERTIONSORTD,INSERTIONSORTD#1}, {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: ?, size: INF INSERTIONSORTD#1: runtime: ?, size: INF ---------------------------------------- (137) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: INSERTIONSORTD after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 2 + 4*z + 4*z^2 Computed RUNTIME bound using KoAT for: INSERTIONSORTD#1 after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 11 + 12*z + 8*z^2 ---------------------------------------- (138) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 1 }-> 1 + INSERTIONSORTD#1(z) :|: z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 3 + 4*s323 }-> 1 + s330 + INSERTIONSORTD(z1) :|: s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 3 }-> 1 + s331 + INSERTIONSORTD(z1) :|: s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s28) :|: s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s29) :|: s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s30) :|: s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s31) :|: s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s32) :|: s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s33) :|: s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s34) :|: s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s35) :|: s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s36) :|: s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(0) + (1 + s37) :|: s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s205 + (1 + s206 + (1 + s207 + (1 + s208 + (1 + s209 + (1 + s210 + (1 + s211 + (1 + s212 + (1 + s213 + (1 + s214 + 0)))))))))) + (1 + s18) :|: s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s215 + (1 + s216 + (1 + s217 + (1 + s218 + (1 + s219 + (1 + s220 + (1 + s221 + (1 + s222 + (1 + s223 + (1 + s224 + 0)))))))))) + (1 + s19) :|: s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s225 + (1 + s226 + (1 + s227 + (1 + s228 + (1 + s229 + (1 + s230 + (1 + s231 + (1 + s232 + (1 + s233 + (1 + s234 + 0)))))))))) + (1 + s20) :|: s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s235 + (1 + s236 + (1 + s237 + (1 + s238 + (1 + s239 + (1 + s240 + (1 + s241 + (1 + s242 + (1 + s243 + (1 + s244 + 0)))))))))) + (1 + s21) :|: s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s245 + (1 + s246 + (1 + s247 + (1 + s248 + (1 + s249 + (1 + s250 + (1 + s251 + (1 + s252 + (1 + s253 + (1 + s254 + 0)))))))))) + (1 + s22) :|: s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s255 + (1 + s256 + (1 + s257 + (1 + s258 + (1 + s259 + (1 + s260 + (1 + s261 + (1 + s262 + (1 + s263 + (1 + s264 + 0)))))))))) + (1 + s23) :|: s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s265 + (1 + s266 + (1 + s267 + (1 + s268 + (1 + s269 + (1 + s270 + (1 + s271 + (1 + s272 + (1 + s273 + (1 + s274 + 0)))))))))) + (1 + s24) :|: s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s275 + (1 + s276 + (1 + s277 + (1 + s278 + (1 + s279 + (1 + s280 + (1 + s281 + (1 + s282 + (1 + s283 + (1 + s284 + 0)))))))))) + (1 + s25) :|: s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s285 + (1 + s286 + (1 + s287 + (1 + s288 + (1 + s289 + (1 + s290 + (1 + s291 + (1 + s292 + (1 + s293 + (1 + s294 + 0)))))))))) + (1 + s26) :|: s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 3 }-> 1 + INSERTIONSORTD(1 + s295 + (1 + s296 + (1 + s297 + (1 + s298 + (1 + s299 + (1 + s300 + (1 + s301 + (1 + s302 + (1 + s303 + (1 + s304 + 0)))))))))) + (1 + s27) :|: s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF ---------------------------------------- (139) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (140) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF ---------------------------------------- (141) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: testInsertionsort after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 74 ---------------------------------------- (142) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testInsertionsort}, {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: ?, size: O(1) [74] ---------------------------------------- (143) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: testInsertionsort after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (144) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] ---------------------------------------- (145) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (146) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] ---------------------------------------- (147) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: TESTINSERTIONSORT after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (148) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {TESTINSERTIONSORT}, {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: ?, size: INF ---------------------------------------- (149) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: TESTINSERTIONSORT after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 22649 ---------------------------------------- (150) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF ---------------------------------------- (151) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (152) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF ---------------------------------------- (153) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: testInsertionsortD after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 74 ---------------------------------------- (154) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {testInsertionsortD}, {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF testInsertionsortD: runtime: ?, size: O(1) [74] ---------------------------------------- (155) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: testInsertionsortD after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (156) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF testInsertionsortD: runtime: O(1) [0], size: O(1) [74] ---------------------------------------- (157) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (158) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF testInsertionsortD: runtime: O(1) [0], size: O(1) [74] ---------------------------------------- (159) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: TESTINSERTIONSORTD after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (160) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: {TESTINSERTIONSORTD} Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF testInsertionsortD: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORTD: runtime: ?, size: INF ---------------------------------------- (161) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: TESTINSERTIONSORTD after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 22205 ---------------------------------------- (162) Obligation: Complexity RNTS consisting of the following rules: #ABS(z) -{ 1 }-> 3 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 2 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 1 :|: z - 1 >= 0 #ABS(z) -{ 1 }-> 0 :|: z = 0 #CKLT(z) -{ 0 }-> 3 :|: z = 3 #CKLT(z) -{ 0 }-> 2 :|: z = 2 #CKLT(z) -{ 0 }-> 1 :|: z = 1 #CKLT(z) -{ 0 }-> 0 :|: z >= 0 #COMPARE(z, z') -{ 0 }-> 8 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 7 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 6 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 5 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 4 :|: z' - 1 >= 0, z = 0 #COMPARE(z, z') -{ 0 }-> 3 :|: z = 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0 #COMPARE(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s56 :|: s56 >= 0, s56 <= z' - 1 + (z - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #COMPARE(z, z') -{ 0 }-> 1 + s57 :|: s57 >= 0, s57 <= z - 1 + (z' - 1) + 8, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s54 + s66 :|: s66 >= 0, s66 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s54 >= 0, s54 <= 3, s40 >= 0, s40 <= 3, z' - 1 >= 0, z - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + s55 + s73 :|: s73 >= 0, s73 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, s55 >= 0, s55 <= 3, s41 >= 0, s41 <= 3, z - 1 >= 0, z' - 1 >= 0 #LESS(z, z') -{ 1 }-> 1 + 3 + s63 :|: s63 >= 0, s63 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s65 :|: s65 >= 0, s65 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 3 + s68 :|: s68 >= 0, s68 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, 3 = 3 #LESS(z, z') -{ 1 }-> 1 + 2 + s61 :|: s61 >= 0, s61 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s70 :|: s70 >= 0, s70 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 2 + s72 :|: s72 >= 0, s72 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, 2 = 2 #LESS(z, z') -{ 1 }-> 1 + 1 + s59 :|: s59 >= 0, s59 <= 0 + 0 + 8, z = 0, z' = 0, 1 = 1 #LESS(z, z') -{ 1 }-> 1 + 0 + s58 :|: s58 >= 0, s58 <= 0 + 0 + 8, z = 0, z' = 0, v0 >= 0, 1 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s60 :|: s60 >= 0, s60 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s62 :|: s62 >= 0, s62 <= 0 + (1 + (z' - 1)) + 8, z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s64 :|: s64 >= 0, s64 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s67 :|: s67 >= 0, s67 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s69 :|: s69 >= 0, s69 <= 1 + (z - 1) + 0 + 8, z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s71 :|: s71 >= 0, s71 <= 1 + (z - 1) + (1 + (z' - 1)) + 8, z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #LESS(z, z') -{ 1 }-> 1 + 0 + s74 :|: s74 >= 0, s74 <= z + z' + 8, z' >= 0, z >= 0, v0 >= 0, 0 = v0 #abs(z) -{ 0 }-> 0 :|: z = 0 #abs(z) -{ 0 }-> 0 :|: z >= 0 #abs(z) -{ 0 }-> 1 + (z - 1) :|: z - 1 >= 0 #abs(z) -{ 0 }-> 1 + (1 + (z - 1)) :|: z - 1 >= 0 #cklt(z) -{ 0 }-> 2 :|: z = 3 #cklt(z) -{ 0 }-> 1 :|: z = 1 #cklt(z) -{ 0 }-> 1 :|: z = 2 #cklt(z) -{ 0 }-> 0 :|: z >= 0 #compare(z, z') -{ 0 }-> s38 :|: s38 >= 0, s38 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> s39 :|: s39 >= 0, s39 <= 3, z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 3 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 3 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0 #compare(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0 #compare(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z - 1 >= 0 #compare(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0 #compare(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> s47 :|: s46 >= 0, s46 <= 3, s47 >= 0, s47 <= 2, z - 1 >= 0, z' - 1 >= 0 #less(z, z') -{ 0 }-> s49 :|: s48 >= 0, s48 <= 3, s49 >= 0, s49 <= 2, z' - 1 >= 0, z - 1 >= 0 #less(z, z') -{ 0 }-> 2 :|: z' - 1 >= 0, z = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' = 0, 3 = 3 #less(z, z') -{ 0 }-> 2 :|: z - 1 >= 0, z' - 1 >= 0, 3 = 3 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' = 0, 1 = 1 #less(z, z') -{ 0 }-> 1 :|: z = 0, z' - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z - 1 >= 0, z' = 0, 2 = 2 #less(z, z') -{ 0 }-> 1 :|: z' - 1 >= 0, z - 1 >= 0, 2 = 2 #less(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' = 0, v0 >= 0, 1 = v0 #less(z, z') -{ 0 }-> 0 :|: z = 0, z' - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' - 1 >= 0, v0 >= 0, 3 = v0 #less(z, z') -{ 0 }-> 0 :|: z - 1 >= 0, z' = 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z - 1 >= 0, v0 >= 0, 2 = v0 #less(z, z') -{ 0 }-> 0 :|: z' >= 0, z >= 0, v0 >= 0, 0 = v0 INSERT(z, z') -{ 8 + 4*z' }-> 1 + s333 :|: s333 >= 0, s333 <= 6 * (z * z') + 6 * (z' * z') + 78 * z', z' >= 0, z >= 0 INSERT#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s334 + s315 :|: s334 >= 0, s334 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s315 >= 0, s315 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#1(z, z') -{ 11 + 4*z1 }-> 1 + s338 + s317 :|: s338 >= 0, s338 <= 6 * (z1 * z') + 78 * z1 + 6 * (z1 * z1) + 2, s317 >= 0, s317 <= z0 + z' + 12, s42 >= 0, s42 <= 3, s43 >= 0, s43 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERT#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERT#2(z, z', z'', z3) -{ 9 + 4*z3 }-> 1 + s335 :|: s335 >= 0, s335 <= 6 * (z3 * z') + 78 * z3 + 6 * (z3 * z3) + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTD(z, z') -{ 2 + 4*z' }-> 1 + s327 :|: s327 >= 0, s327 <= 2 * z + 30 * z' + 2 * (z * z') + 2 * (z' * z') + 28, z' >= 0, z >= 0 INSERTD#1(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s328 + s316 :|: s328 >= 0, s328 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s316 >= 0, s316 <= z0 + z' + 12, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#1(z, z') -{ 5 + 4*z1 }-> 1 + s332 + s318 :|: s332 >= 0, s332 <= z' * z1 + z1 * z1 + 14 * z1 + 2, s318 >= 0, s318 <= z0 + z' + 12, s44 >= 0, s44 <= 3, s45 >= 0, s45 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 INSERTD#2(z, z', z'', z3) -{ 1 }-> 0 :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 INSERTD#2(z, z', z'', z3) -{ 3 + 4*z3 }-> 1 + s329 :|: s329 >= 0, s329 <= 2 * z' + 2 * (z3 * z') + 30 * z3 + 2 * (z3 * z3) + 29, z = 2, z'' >= 0, z' >= 0, z3 >= 0 INSERTIONSORT(z) -{ 24 + 24*z + 8*z^2 }-> 1 + s341 :|: s341 >= 0, s341 <= inf, z >= 0 INSERTIONSORT#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORT#1(z) -{ 11 + 4*s319 + 10*z1 + 4*z1^2 }-> 1 + s336 + s342 :|: s342 >= 0, s342 <= inf', s336 >= 0, s336 <= 6 * (s319 * z0) + 78 * s319 + 6 * (s319 * s319) + 1, s319 >= 0, s319 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORT#1(z) -{ 11 + 10*z1 + 4*z1^2 }-> 1 + s337 + s343 :|: s343 >= 0, s343 <= inf'', s337 >= 0, s337 <= 6 * (0 * z0) + 78 * 0 + 6 * (0 * 0) + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD(z) -{ 12 + 12*z + 8*z^2 }-> 1 + s366 :|: s366 >= 0, s366 <= inf21, z >= 0 INSERTIONSORTD#1(z) -{ 1 }-> 0 :|: z = 0 INSERTIONSORTD#1(z) -{ 5 + 4*s323 + 4*z1 + 4*z1^2 }-> 1 + s330 + s367 :|: s367 >= 0, s367 <= inf22, s330 >= 0, s330 <= 2 * z0 + 2 * (s323 * z0) + 30 * s323 + 2 * (s323 * s323) + 29, s323 >= 0, s323 <= z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 INSERTIONSORTD#1(z) -{ 5 + 4*z1 + 4*z1^2 }-> 1 + s331 + s368 :|: s368 >= 0, s368 <= inf23, s331 >= 0, s331 <= 2 * z0 + 2 * (0 * z0) + 30 * 0 + 2 * (0 * 0) + 29, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 TESTINSERTIONSORT(z) -{ 505 + 90*s105 + 8*s105*s106 + 8*s105*s107 + 8*s105*s108 + 8*s105*s109 + 8*s105*s110 + 8*s105*s111 + 8*s105*s112 + 8*s105*s113 + 8*s105*s114 + 4*s105^2 + 90*s106 + 8*s106*s107 + 8*s106*s108 + 8*s106*s109 + 8*s106*s110 + 8*s106*s111 + 8*s106*s112 + 8*s106*s113 + 8*s106*s114 + 4*s106^2 + 90*s107 + 8*s107*s108 + 8*s107*s109 + 8*s107*s110 + 8*s107*s111 + 8*s107*s112 + 8*s107*s113 + 8*s107*s114 + 4*s107^2 + 90*s108 + 8*s108*s109 + 8*s108*s110 + 8*s108*s111 + 8*s108*s112 + 8*s108*s113 + 8*s108*s114 + 4*s108^2 + 90*s109 + 8*s109*s110 + 8*s109*s111 + 8*s109*s112 + 8*s109*s113 + 8*s109*s114 + 4*s109^2 + 90*s110 + 8*s110*s111 + 8*s110*s112 + 8*s110*s113 + 8*s110*s114 + 4*s110^2 + 90*s111 + 8*s111*s112 + 8*s111*s113 + 8*s111*s114 + 4*s111^2 + 90*s112 + 8*s112*s113 + 8*s112*s114 + 4*s112^2 + 90*s113 + 8*s113*s114 + 4*s113^2 + 90*s114 + 4*s114^2 }-> 1 + s344 + (1 + s) :|: s344 >= 0, s344 <= inf1, s105 >= 0, s105 <= 0 + 1, s106 >= 0, s106 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s107 >= 0, s107 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s108 >= 0, s108 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s109 >= 0, s109 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s110 >= 0, s110 <= 1 + (1 + 0) + 1, s111 >= 0, s111 <= 1 + (1 + (1 + 0)) + 1, s112 >= 0, s112 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s113 >= 0, s113 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s114 >= 0, s114 <= 1 + (1 + (1 + (1 + 0))) + 1, s >= 0, s <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s115 + 8*s115*s116 + 8*s115*s117 + 8*s115*s118 + 8*s115*s119 + 8*s115*s120 + 8*s115*s121 + 8*s115*s122 + 8*s115*s123 + 8*s115*s124 + 4*s115^2 + 90*s116 + 8*s116*s117 + 8*s116*s118 + 8*s116*s119 + 8*s116*s120 + 8*s116*s121 + 8*s116*s122 + 8*s116*s123 + 8*s116*s124 + 4*s116^2 + 90*s117 + 8*s117*s118 + 8*s117*s119 + 8*s117*s120 + 8*s117*s121 + 8*s117*s122 + 8*s117*s123 + 8*s117*s124 + 4*s117^2 + 90*s118 + 8*s118*s119 + 8*s118*s120 + 8*s118*s121 + 8*s118*s122 + 8*s118*s123 + 8*s118*s124 + 4*s118^2 + 90*s119 + 8*s119*s120 + 8*s119*s121 + 8*s119*s122 + 8*s119*s123 + 8*s119*s124 + 4*s119^2 + 90*s120 + 8*s120*s121 + 8*s120*s122 + 8*s120*s123 + 8*s120*s124 + 4*s120^2 + 90*s121 + 8*s121*s122 + 8*s121*s123 + 8*s121*s124 + 4*s121^2 + 90*s122 + 8*s122*s123 + 8*s122*s124 + 4*s122^2 + 90*s123 + 8*s123*s124 + 4*s123^2 + 90*s124 + 4*s124^2 }-> 1 + s345 + (1 + s') :|: s345 >= 0, s345 <= inf2, s115 >= 0, s115 <= 0 + 1, s116 >= 0, s116 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s117 >= 0, s117 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s118 >= 0, s118 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s119 >= 0, s119 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s120 >= 0, s120 <= 1 + (1 + 0) + 1, s121 >= 0, s121 <= 1 + (1 + (1 + 0)) + 1, s122 >= 0, s122 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s123 >= 0, s123 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s124 >= 0, s124 <= 1 + (1 + (1 + (1 + 0))) + 1, s' >= 0, s' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s125 + 8*s125*s126 + 8*s125*s127 + 8*s125*s128 + 8*s125*s129 + 8*s125*s130 + 8*s125*s131 + 8*s125*s132 + 8*s125*s133 + 8*s125*s134 + 4*s125^2 + 90*s126 + 8*s126*s127 + 8*s126*s128 + 8*s126*s129 + 8*s126*s130 + 8*s126*s131 + 8*s126*s132 + 8*s126*s133 + 8*s126*s134 + 4*s126^2 + 90*s127 + 8*s127*s128 + 8*s127*s129 + 8*s127*s130 + 8*s127*s131 + 8*s127*s132 + 8*s127*s133 + 8*s127*s134 + 4*s127^2 + 90*s128 + 8*s128*s129 + 8*s128*s130 + 8*s128*s131 + 8*s128*s132 + 8*s128*s133 + 8*s128*s134 + 4*s128^2 + 90*s129 + 8*s129*s130 + 8*s129*s131 + 8*s129*s132 + 8*s129*s133 + 8*s129*s134 + 4*s129^2 + 90*s130 + 8*s130*s131 + 8*s130*s132 + 8*s130*s133 + 8*s130*s134 + 4*s130^2 + 90*s131 + 8*s131*s132 + 8*s131*s133 + 8*s131*s134 + 4*s131^2 + 90*s132 + 8*s132*s133 + 8*s132*s134 + 4*s132^2 + 90*s133 + 8*s133*s134 + 4*s133^2 + 90*s134 + 4*s134^2 }-> 1 + s346 + (1 + s'') :|: s346 >= 0, s346 <= inf3, s125 >= 0, s125 <= 0 + 1, s126 >= 0, s126 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s127 >= 0, s127 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s128 >= 0, s128 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s129 >= 0, s129 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s130 >= 0, s130 <= 1 + (1 + 0) + 1, s131 >= 0, s131 <= 1 + (1 + (1 + 0)) + 1, s132 >= 0, s132 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s133 >= 0, s133 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s134 >= 0, s134 <= 1 + (1 + (1 + (1 + 0))) + 1, s'' >= 0, s'' <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s135 + 8*s135*s136 + 8*s135*s137 + 8*s135*s138 + 8*s135*s139 + 8*s135*s140 + 8*s135*s141 + 8*s135*s142 + 8*s135*s143 + 8*s135*s144 + 4*s135^2 + 90*s136 + 8*s136*s137 + 8*s136*s138 + 8*s136*s139 + 8*s136*s140 + 8*s136*s141 + 8*s136*s142 + 8*s136*s143 + 8*s136*s144 + 4*s136^2 + 90*s137 + 8*s137*s138 + 8*s137*s139 + 8*s137*s140 + 8*s137*s141 + 8*s137*s142 + 8*s137*s143 + 8*s137*s144 + 4*s137^2 + 90*s138 + 8*s138*s139 + 8*s138*s140 + 8*s138*s141 + 8*s138*s142 + 8*s138*s143 + 8*s138*s144 + 4*s138^2 + 90*s139 + 8*s139*s140 + 8*s139*s141 + 8*s139*s142 + 8*s139*s143 + 8*s139*s144 + 4*s139^2 + 90*s140 + 8*s140*s141 + 8*s140*s142 + 8*s140*s143 + 8*s140*s144 + 4*s140^2 + 90*s141 + 8*s141*s142 + 8*s141*s143 + 8*s141*s144 + 4*s141^2 + 90*s142 + 8*s142*s143 + 8*s142*s144 + 4*s142^2 + 90*s143 + 8*s143*s144 + 4*s143^2 + 90*s144 + 4*s144^2 }-> 1 + s347 + (1 + s1) :|: s347 >= 0, s347 <= inf4, s135 >= 0, s135 <= 0 + 1, s136 >= 0, s136 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s137 >= 0, s137 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s138 >= 0, s138 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s139 >= 0, s139 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s140 >= 0, s140 <= 1 + (1 + 0) + 1, s141 >= 0, s141 <= 1 + (1 + (1 + 0)) + 1, s142 >= 0, s142 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s143 >= 0, s143 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s144 >= 0, s144 <= 1 + (1 + (1 + (1 + 0))) + 1, s1 >= 0, s1 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s145 + 8*s145*s146 + 8*s145*s147 + 8*s145*s148 + 8*s145*s149 + 8*s145*s150 + 8*s145*s151 + 8*s145*s152 + 8*s145*s153 + 8*s145*s154 + 4*s145^2 + 90*s146 + 8*s146*s147 + 8*s146*s148 + 8*s146*s149 + 8*s146*s150 + 8*s146*s151 + 8*s146*s152 + 8*s146*s153 + 8*s146*s154 + 4*s146^2 + 90*s147 + 8*s147*s148 + 8*s147*s149 + 8*s147*s150 + 8*s147*s151 + 8*s147*s152 + 8*s147*s153 + 8*s147*s154 + 4*s147^2 + 90*s148 + 8*s148*s149 + 8*s148*s150 + 8*s148*s151 + 8*s148*s152 + 8*s148*s153 + 8*s148*s154 + 4*s148^2 + 90*s149 + 8*s149*s150 + 8*s149*s151 + 8*s149*s152 + 8*s149*s153 + 8*s149*s154 + 4*s149^2 + 90*s150 + 8*s150*s151 + 8*s150*s152 + 8*s150*s153 + 8*s150*s154 + 4*s150^2 + 90*s151 + 8*s151*s152 + 8*s151*s153 + 8*s151*s154 + 4*s151^2 + 90*s152 + 8*s152*s153 + 8*s152*s154 + 4*s152^2 + 90*s153 + 8*s153*s154 + 4*s153^2 + 90*s154 + 4*s154^2 }-> 1 + s348 + (1 + s2) :|: s348 >= 0, s348 <= inf5, s145 >= 0, s145 <= 0 + 1, s146 >= 0, s146 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s147 >= 0, s147 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s148 >= 0, s148 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s149 >= 0, s149 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s150 >= 0, s150 <= 1 + (1 + 0) + 1, s151 >= 0, s151 <= 1 + (1 + (1 + 0)) + 1, s152 >= 0, s152 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s153 >= 0, s153 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s154 >= 0, s154 <= 1 + (1 + (1 + (1 + 0))) + 1, s2 >= 0, s2 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s155 + 8*s155*s156 + 8*s155*s157 + 8*s155*s158 + 8*s155*s159 + 8*s155*s160 + 8*s155*s161 + 8*s155*s162 + 8*s155*s163 + 8*s155*s164 + 4*s155^2 + 90*s156 + 8*s156*s157 + 8*s156*s158 + 8*s156*s159 + 8*s156*s160 + 8*s156*s161 + 8*s156*s162 + 8*s156*s163 + 8*s156*s164 + 4*s156^2 + 90*s157 + 8*s157*s158 + 8*s157*s159 + 8*s157*s160 + 8*s157*s161 + 8*s157*s162 + 8*s157*s163 + 8*s157*s164 + 4*s157^2 + 90*s158 + 8*s158*s159 + 8*s158*s160 + 8*s158*s161 + 8*s158*s162 + 8*s158*s163 + 8*s158*s164 + 4*s158^2 + 90*s159 + 8*s159*s160 + 8*s159*s161 + 8*s159*s162 + 8*s159*s163 + 8*s159*s164 + 4*s159^2 + 90*s160 + 8*s160*s161 + 8*s160*s162 + 8*s160*s163 + 8*s160*s164 + 4*s160^2 + 90*s161 + 8*s161*s162 + 8*s161*s163 + 8*s161*s164 + 4*s161^2 + 90*s162 + 8*s162*s163 + 8*s162*s164 + 4*s162^2 + 90*s163 + 8*s163*s164 + 4*s163^2 + 90*s164 + 4*s164^2 }-> 1 + s349 + (1 + s3) :|: s349 >= 0, s349 <= inf6, s155 >= 0, s155 <= 0 + 1, s156 >= 0, s156 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s157 >= 0, s157 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s158 >= 0, s158 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s159 >= 0, s159 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s160 >= 0, s160 <= 1 + (1 + 0) + 1, s161 >= 0, s161 <= 1 + (1 + (1 + 0)) + 1, s162 >= 0, s162 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s163 >= 0, s163 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s164 >= 0, s164 <= 1 + (1 + (1 + (1 + 0))) + 1, s3 >= 0, s3 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s165 + 8*s165*s166 + 8*s165*s167 + 8*s165*s168 + 8*s165*s169 + 8*s165*s170 + 8*s165*s171 + 8*s165*s172 + 8*s165*s173 + 8*s165*s174 + 4*s165^2 + 90*s166 + 8*s166*s167 + 8*s166*s168 + 8*s166*s169 + 8*s166*s170 + 8*s166*s171 + 8*s166*s172 + 8*s166*s173 + 8*s166*s174 + 4*s166^2 + 90*s167 + 8*s167*s168 + 8*s167*s169 + 8*s167*s170 + 8*s167*s171 + 8*s167*s172 + 8*s167*s173 + 8*s167*s174 + 4*s167^2 + 90*s168 + 8*s168*s169 + 8*s168*s170 + 8*s168*s171 + 8*s168*s172 + 8*s168*s173 + 8*s168*s174 + 4*s168^2 + 90*s169 + 8*s169*s170 + 8*s169*s171 + 8*s169*s172 + 8*s169*s173 + 8*s169*s174 + 4*s169^2 + 90*s170 + 8*s170*s171 + 8*s170*s172 + 8*s170*s173 + 8*s170*s174 + 4*s170^2 + 90*s171 + 8*s171*s172 + 8*s171*s173 + 8*s171*s174 + 4*s171^2 + 90*s172 + 8*s172*s173 + 8*s172*s174 + 4*s172^2 + 90*s173 + 8*s173*s174 + 4*s173^2 + 90*s174 + 4*s174^2 }-> 1 + s350 + (1 + s4) :|: s350 >= 0, s350 <= inf7, s165 >= 0, s165 <= 0 + 1, s166 >= 0, s166 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s167 >= 0, s167 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s168 >= 0, s168 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s169 >= 0, s169 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s170 >= 0, s170 <= 1 + (1 + 0) + 1, s171 >= 0, s171 <= 1 + (1 + (1 + 0)) + 1, s172 >= 0, s172 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s173 >= 0, s173 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s174 >= 0, s174 <= 1 + (1 + (1 + (1 + 0))) + 1, s4 >= 0, s4 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s175 + 8*s175*s176 + 8*s175*s177 + 8*s175*s178 + 8*s175*s179 + 8*s175*s180 + 8*s175*s181 + 8*s175*s182 + 8*s175*s183 + 8*s175*s184 + 4*s175^2 + 90*s176 + 8*s176*s177 + 8*s176*s178 + 8*s176*s179 + 8*s176*s180 + 8*s176*s181 + 8*s176*s182 + 8*s176*s183 + 8*s176*s184 + 4*s176^2 + 90*s177 + 8*s177*s178 + 8*s177*s179 + 8*s177*s180 + 8*s177*s181 + 8*s177*s182 + 8*s177*s183 + 8*s177*s184 + 4*s177^2 + 90*s178 + 8*s178*s179 + 8*s178*s180 + 8*s178*s181 + 8*s178*s182 + 8*s178*s183 + 8*s178*s184 + 4*s178^2 + 90*s179 + 8*s179*s180 + 8*s179*s181 + 8*s179*s182 + 8*s179*s183 + 8*s179*s184 + 4*s179^2 + 90*s180 + 8*s180*s181 + 8*s180*s182 + 8*s180*s183 + 8*s180*s184 + 4*s180^2 + 90*s181 + 8*s181*s182 + 8*s181*s183 + 8*s181*s184 + 4*s181^2 + 90*s182 + 8*s182*s183 + 8*s182*s184 + 4*s182^2 + 90*s183 + 8*s183*s184 + 4*s183^2 + 90*s184 + 4*s184^2 }-> 1 + s351 + (1 + s5) :|: s351 >= 0, s351 <= inf8, s175 >= 0, s175 <= 0 + 1, s176 >= 0, s176 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s177 >= 0, s177 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s178 >= 0, s178 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s179 >= 0, s179 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s180 >= 0, s180 <= 1 + (1 + 0) + 1, s181 >= 0, s181 <= 1 + (1 + (1 + 0)) + 1, s182 >= 0, s182 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s183 >= 0, s183 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s184 >= 0, s184 <= 1 + (1 + (1 + (1 + 0))) + 1, s5 >= 0, s5 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s185 + 8*s185*s186 + 8*s185*s187 + 8*s185*s188 + 8*s185*s189 + 8*s185*s190 + 8*s185*s191 + 8*s185*s192 + 8*s185*s193 + 8*s185*s194 + 4*s185^2 + 90*s186 + 8*s186*s187 + 8*s186*s188 + 8*s186*s189 + 8*s186*s190 + 8*s186*s191 + 8*s186*s192 + 8*s186*s193 + 8*s186*s194 + 4*s186^2 + 90*s187 + 8*s187*s188 + 8*s187*s189 + 8*s187*s190 + 8*s187*s191 + 8*s187*s192 + 8*s187*s193 + 8*s187*s194 + 4*s187^2 + 90*s188 + 8*s188*s189 + 8*s188*s190 + 8*s188*s191 + 8*s188*s192 + 8*s188*s193 + 8*s188*s194 + 4*s188^2 + 90*s189 + 8*s189*s190 + 8*s189*s191 + 8*s189*s192 + 8*s189*s193 + 8*s189*s194 + 4*s189^2 + 90*s190 + 8*s190*s191 + 8*s190*s192 + 8*s190*s193 + 8*s190*s194 + 4*s190^2 + 90*s191 + 8*s191*s192 + 8*s191*s193 + 8*s191*s194 + 4*s191^2 + 90*s192 + 8*s192*s193 + 8*s192*s194 + 4*s192^2 + 90*s193 + 8*s193*s194 + 4*s193^2 + 90*s194 + 4*s194^2 }-> 1 + s352 + (1 + s6) :|: s352 >= 0, s352 <= inf9, s185 >= 0, s185 <= 0 + 1, s186 >= 0, s186 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s187 >= 0, s187 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s188 >= 0, s188 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s189 >= 0, s189 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s190 >= 0, s190 <= 1 + (1 + 0) + 1, s191 >= 0, s191 <= 1 + (1 + (1 + 0)) + 1, s192 >= 0, s192 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s193 >= 0, s193 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s194 >= 0, s194 <= 1 + (1 + (1 + (1 + 0))) + 1, s6 >= 0, s6 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 505 + 90*s195 + 8*s195*s196 + 8*s195*s197 + 8*s195*s198 + 8*s195*s199 + 8*s195*s200 + 8*s195*s201 + 8*s195*s202 + 8*s195*s203 + 8*s195*s204 + 4*s195^2 + 90*s196 + 8*s196*s197 + 8*s196*s198 + 8*s196*s199 + 8*s196*s200 + 8*s196*s201 + 8*s196*s202 + 8*s196*s203 + 8*s196*s204 + 4*s196^2 + 90*s197 + 8*s197*s198 + 8*s197*s199 + 8*s197*s200 + 8*s197*s201 + 8*s197*s202 + 8*s197*s203 + 8*s197*s204 + 4*s197^2 + 90*s198 + 8*s198*s199 + 8*s198*s200 + 8*s198*s201 + 8*s198*s202 + 8*s198*s203 + 8*s198*s204 + 4*s198^2 + 90*s199 + 8*s199*s200 + 8*s199*s201 + 8*s199*s202 + 8*s199*s203 + 8*s199*s204 + 4*s199^2 + 90*s200 + 8*s200*s201 + 8*s200*s202 + 8*s200*s203 + 8*s200*s204 + 4*s200^2 + 90*s201 + 8*s201*s202 + 8*s201*s203 + 8*s201*s204 + 4*s201^2 + 90*s202 + 8*s202*s203 + 8*s202*s204 + 4*s202^2 + 90*s203 + 8*s203*s204 + 4*s203^2 + 90*s204 + 4*s204^2 }-> 1 + s353 + (1 + s7) :|: s353 >= 0, s353 <= inf10, s195 >= 0, s195 <= 0 + 1, s196 >= 0, s196 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s197 >= 0, s197 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s198 >= 0, s198 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s199 >= 0, s199 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s200 >= 0, s200 <= 1 + (1 + 0) + 1, s201 >= 0, s201 <= 1 + (1 + (1 + 0)) + 1, s202 >= 0, s202 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s203 >= 0, s203 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s204 >= 0, s204 <= 1 + (1 + (1 + (1 + 0))) + 1, s7 >= 0, s7 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s354 + (1 + s8) :|: s354 >= 0, s354 <= inf11, s8 >= 0, s8 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s355 + (1 + s9) :|: s355 >= 0, s355 <= inf12, s9 >= 0, s9 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s356 + (1 + s10) :|: s356 >= 0, s356 <= inf13, s10 >= 0, s10 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s357 + (1 + s11) :|: s357 >= 0, s357 <= inf14, s11 >= 0, s11 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s358 + (1 + s12) :|: s358 >= 0, s358 <= inf15, s12 >= 0, s12 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s359 + (1 + s13) :|: s359 >= 0, s359 <= inf16, s13 >= 0, s13 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s360 + (1 + s14) :|: s360 >= 0, s360 <= inf17, s14 >= 0, s14 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s361 + (1 + s15) :|: s361 >= 0, s361 <= inf18, s15 >= 0, s15 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s362 + (1 + s16) :|: s362 >= 0, s362 <= inf19, s16 >= 0, s16 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORT(z) -{ 5 }-> 1 + s363 + (1 + s17) :|: s363 >= 0, s363 <= inf20, s17 >= 0, s17 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s205 + 8*s205*s206 + 8*s205*s207 + 8*s205*s208 + 8*s205*s209 + 8*s205*s210 + 8*s205*s211 + 8*s205*s212 + 8*s205*s213 + 8*s205*s214 + 4*s205^2 + 84*s206 + 8*s206*s207 + 8*s206*s208 + 8*s206*s209 + 8*s206*s210 + 8*s206*s211 + 8*s206*s212 + 8*s206*s213 + 8*s206*s214 + 4*s206^2 + 84*s207 + 8*s207*s208 + 8*s207*s209 + 8*s207*s210 + 8*s207*s211 + 8*s207*s212 + 8*s207*s213 + 8*s207*s214 + 4*s207^2 + 84*s208 + 8*s208*s209 + 8*s208*s210 + 8*s208*s211 + 8*s208*s212 + 8*s208*s213 + 8*s208*s214 + 4*s208^2 + 84*s209 + 8*s209*s210 + 8*s209*s211 + 8*s209*s212 + 8*s209*s213 + 8*s209*s214 + 4*s209^2 + 84*s210 + 8*s210*s211 + 8*s210*s212 + 8*s210*s213 + 8*s210*s214 + 4*s210^2 + 84*s211 + 8*s211*s212 + 8*s211*s213 + 8*s211*s214 + 4*s211^2 + 84*s212 + 8*s212*s213 + 8*s212*s214 + 4*s212^2 + 84*s213 + 8*s213*s214 + 4*s213^2 + 84*s214 + 4*s214^2 }-> 1 + s369 + (1 + s18) :|: s369 >= 0, s369 <= inf24, s205 >= 0, s205 <= 0 + 1, s206 >= 0, s206 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s207 >= 0, s207 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s208 >= 0, s208 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s209 >= 0, s209 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s210 >= 0, s210 <= 1 + (1 + 0) + 1, s211 >= 0, s211 <= 1 + (1 + (1 + 0)) + 1, s212 >= 0, s212 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s213 >= 0, s213 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s214 >= 0, s214 <= 1 + (1 + (1 + (1 + 0))) + 1, s18 >= 0, s18 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s215 + 8*s215*s216 + 8*s215*s217 + 8*s215*s218 + 8*s215*s219 + 8*s215*s220 + 8*s215*s221 + 8*s215*s222 + 8*s215*s223 + 8*s215*s224 + 4*s215^2 + 84*s216 + 8*s216*s217 + 8*s216*s218 + 8*s216*s219 + 8*s216*s220 + 8*s216*s221 + 8*s216*s222 + 8*s216*s223 + 8*s216*s224 + 4*s216^2 + 84*s217 + 8*s217*s218 + 8*s217*s219 + 8*s217*s220 + 8*s217*s221 + 8*s217*s222 + 8*s217*s223 + 8*s217*s224 + 4*s217^2 + 84*s218 + 8*s218*s219 + 8*s218*s220 + 8*s218*s221 + 8*s218*s222 + 8*s218*s223 + 8*s218*s224 + 4*s218^2 + 84*s219 + 8*s219*s220 + 8*s219*s221 + 8*s219*s222 + 8*s219*s223 + 8*s219*s224 + 4*s219^2 + 84*s220 + 8*s220*s221 + 8*s220*s222 + 8*s220*s223 + 8*s220*s224 + 4*s220^2 + 84*s221 + 8*s221*s222 + 8*s221*s223 + 8*s221*s224 + 4*s221^2 + 84*s222 + 8*s222*s223 + 8*s222*s224 + 4*s222^2 + 84*s223 + 8*s223*s224 + 4*s223^2 + 84*s224 + 4*s224^2 }-> 1 + s370 + (1 + s19) :|: s370 >= 0, s370 <= inf25, s215 >= 0, s215 <= 0 + 1, s216 >= 0, s216 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s217 >= 0, s217 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s218 >= 0, s218 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s219 >= 0, s219 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s220 >= 0, s220 <= 1 + (1 + 0) + 1, s221 >= 0, s221 <= 1 + (1 + (1 + 0)) + 1, s222 >= 0, s222 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s223 >= 0, s223 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s224 >= 0, s224 <= 1 + (1 + (1 + (1 + 0))) + 1, s19 >= 0, s19 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s225 + 8*s225*s226 + 8*s225*s227 + 8*s225*s228 + 8*s225*s229 + 8*s225*s230 + 8*s225*s231 + 8*s225*s232 + 8*s225*s233 + 8*s225*s234 + 4*s225^2 + 84*s226 + 8*s226*s227 + 8*s226*s228 + 8*s226*s229 + 8*s226*s230 + 8*s226*s231 + 8*s226*s232 + 8*s226*s233 + 8*s226*s234 + 4*s226^2 + 84*s227 + 8*s227*s228 + 8*s227*s229 + 8*s227*s230 + 8*s227*s231 + 8*s227*s232 + 8*s227*s233 + 8*s227*s234 + 4*s227^2 + 84*s228 + 8*s228*s229 + 8*s228*s230 + 8*s228*s231 + 8*s228*s232 + 8*s228*s233 + 8*s228*s234 + 4*s228^2 + 84*s229 + 8*s229*s230 + 8*s229*s231 + 8*s229*s232 + 8*s229*s233 + 8*s229*s234 + 4*s229^2 + 84*s230 + 8*s230*s231 + 8*s230*s232 + 8*s230*s233 + 8*s230*s234 + 4*s230^2 + 84*s231 + 8*s231*s232 + 8*s231*s233 + 8*s231*s234 + 4*s231^2 + 84*s232 + 8*s232*s233 + 8*s232*s234 + 4*s232^2 + 84*s233 + 8*s233*s234 + 4*s233^2 + 84*s234 + 4*s234^2 }-> 1 + s371 + (1 + s20) :|: s371 >= 0, s371 <= inf26, s225 >= 0, s225 <= 0 + 1, s226 >= 0, s226 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s227 >= 0, s227 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s228 >= 0, s228 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s229 >= 0, s229 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s230 >= 0, s230 <= 1 + (1 + 0) + 1, s231 >= 0, s231 <= 1 + (1 + (1 + 0)) + 1, s232 >= 0, s232 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s233 >= 0, s233 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s234 >= 0, s234 <= 1 + (1 + (1 + (1 + 0))) + 1, s20 >= 0, s20 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s235 + 8*s235*s236 + 8*s235*s237 + 8*s235*s238 + 8*s235*s239 + 8*s235*s240 + 8*s235*s241 + 8*s235*s242 + 8*s235*s243 + 8*s235*s244 + 4*s235^2 + 84*s236 + 8*s236*s237 + 8*s236*s238 + 8*s236*s239 + 8*s236*s240 + 8*s236*s241 + 8*s236*s242 + 8*s236*s243 + 8*s236*s244 + 4*s236^2 + 84*s237 + 8*s237*s238 + 8*s237*s239 + 8*s237*s240 + 8*s237*s241 + 8*s237*s242 + 8*s237*s243 + 8*s237*s244 + 4*s237^2 + 84*s238 + 8*s238*s239 + 8*s238*s240 + 8*s238*s241 + 8*s238*s242 + 8*s238*s243 + 8*s238*s244 + 4*s238^2 + 84*s239 + 8*s239*s240 + 8*s239*s241 + 8*s239*s242 + 8*s239*s243 + 8*s239*s244 + 4*s239^2 + 84*s240 + 8*s240*s241 + 8*s240*s242 + 8*s240*s243 + 8*s240*s244 + 4*s240^2 + 84*s241 + 8*s241*s242 + 8*s241*s243 + 8*s241*s244 + 4*s241^2 + 84*s242 + 8*s242*s243 + 8*s242*s244 + 4*s242^2 + 84*s243 + 8*s243*s244 + 4*s243^2 + 84*s244 + 4*s244^2 }-> 1 + s372 + (1 + s21) :|: s372 >= 0, s372 <= inf27, s235 >= 0, s235 <= 0 + 1, s236 >= 0, s236 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s237 >= 0, s237 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s238 >= 0, s238 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s239 >= 0, s239 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s240 >= 0, s240 <= 1 + (1 + 0) + 1, s241 >= 0, s241 <= 1 + (1 + (1 + 0)) + 1, s242 >= 0, s242 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s243 >= 0, s243 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s244 >= 0, s244 <= 1 + (1 + (1 + (1 + 0))) + 1, s21 >= 0, s21 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s245 + 8*s245*s246 + 8*s245*s247 + 8*s245*s248 + 8*s245*s249 + 8*s245*s250 + 8*s245*s251 + 8*s245*s252 + 8*s245*s253 + 8*s245*s254 + 4*s245^2 + 84*s246 + 8*s246*s247 + 8*s246*s248 + 8*s246*s249 + 8*s246*s250 + 8*s246*s251 + 8*s246*s252 + 8*s246*s253 + 8*s246*s254 + 4*s246^2 + 84*s247 + 8*s247*s248 + 8*s247*s249 + 8*s247*s250 + 8*s247*s251 + 8*s247*s252 + 8*s247*s253 + 8*s247*s254 + 4*s247^2 + 84*s248 + 8*s248*s249 + 8*s248*s250 + 8*s248*s251 + 8*s248*s252 + 8*s248*s253 + 8*s248*s254 + 4*s248^2 + 84*s249 + 8*s249*s250 + 8*s249*s251 + 8*s249*s252 + 8*s249*s253 + 8*s249*s254 + 4*s249^2 + 84*s250 + 8*s250*s251 + 8*s250*s252 + 8*s250*s253 + 8*s250*s254 + 4*s250^2 + 84*s251 + 8*s251*s252 + 8*s251*s253 + 8*s251*s254 + 4*s251^2 + 84*s252 + 8*s252*s253 + 8*s252*s254 + 4*s252^2 + 84*s253 + 8*s253*s254 + 4*s253^2 + 84*s254 + 4*s254^2 }-> 1 + s373 + (1 + s22) :|: s373 >= 0, s373 <= inf28, s245 >= 0, s245 <= 0 + 1, s246 >= 0, s246 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s247 >= 0, s247 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s248 >= 0, s248 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s249 >= 0, s249 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s250 >= 0, s250 <= 1 + (1 + 0) + 1, s251 >= 0, s251 <= 1 + (1 + (1 + 0)) + 1, s252 >= 0, s252 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s253 >= 0, s253 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s254 >= 0, s254 <= 1 + (1 + (1 + (1 + 0))) + 1, s22 >= 0, s22 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s255 + 8*s255*s256 + 8*s255*s257 + 8*s255*s258 + 8*s255*s259 + 8*s255*s260 + 8*s255*s261 + 8*s255*s262 + 8*s255*s263 + 8*s255*s264 + 4*s255^2 + 84*s256 + 8*s256*s257 + 8*s256*s258 + 8*s256*s259 + 8*s256*s260 + 8*s256*s261 + 8*s256*s262 + 8*s256*s263 + 8*s256*s264 + 4*s256^2 + 84*s257 + 8*s257*s258 + 8*s257*s259 + 8*s257*s260 + 8*s257*s261 + 8*s257*s262 + 8*s257*s263 + 8*s257*s264 + 4*s257^2 + 84*s258 + 8*s258*s259 + 8*s258*s260 + 8*s258*s261 + 8*s258*s262 + 8*s258*s263 + 8*s258*s264 + 4*s258^2 + 84*s259 + 8*s259*s260 + 8*s259*s261 + 8*s259*s262 + 8*s259*s263 + 8*s259*s264 + 4*s259^2 + 84*s260 + 8*s260*s261 + 8*s260*s262 + 8*s260*s263 + 8*s260*s264 + 4*s260^2 + 84*s261 + 8*s261*s262 + 8*s261*s263 + 8*s261*s264 + 4*s261^2 + 84*s262 + 8*s262*s263 + 8*s262*s264 + 4*s262^2 + 84*s263 + 8*s263*s264 + 4*s263^2 + 84*s264 + 4*s264^2 }-> 1 + s374 + (1 + s23) :|: s374 >= 0, s374 <= inf29, s255 >= 0, s255 <= 0 + 1, s256 >= 0, s256 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s257 >= 0, s257 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s258 >= 0, s258 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s259 >= 0, s259 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s260 >= 0, s260 <= 1 + (1 + 0) + 1, s261 >= 0, s261 <= 1 + (1 + (1 + 0)) + 1, s262 >= 0, s262 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s263 >= 0, s263 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s264 >= 0, s264 <= 1 + (1 + (1 + (1 + 0))) + 1, s23 >= 0, s23 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s265 + 8*s265*s266 + 8*s265*s267 + 8*s265*s268 + 8*s265*s269 + 8*s265*s270 + 8*s265*s271 + 8*s265*s272 + 8*s265*s273 + 8*s265*s274 + 4*s265^2 + 84*s266 + 8*s266*s267 + 8*s266*s268 + 8*s266*s269 + 8*s266*s270 + 8*s266*s271 + 8*s266*s272 + 8*s266*s273 + 8*s266*s274 + 4*s266^2 + 84*s267 + 8*s267*s268 + 8*s267*s269 + 8*s267*s270 + 8*s267*s271 + 8*s267*s272 + 8*s267*s273 + 8*s267*s274 + 4*s267^2 + 84*s268 + 8*s268*s269 + 8*s268*s270 + 8*s268*s271 + 8*s268*s272 + 8*s268*s273 + 8*s268*s274 + 4*s268^2 + 84*s269 + 8*s269*s270 + 8*s269*s271 + 8*s269*s272 + 8*s269*s273 + 8*s269*s274 + 4*s269^2 + 84*s270 + 8*s270*s271 + 8*s270*s272 + 8*s270*s273 + 8*s270*s274 + 4*s270^2 + 84*s271 + 8*s271*s272 + 8*s271*s273 + 8*s271*s274 + 4*s271^2 + 84*s272 + 8*s272*s273 + 8*s272*s274 + 4*s272^2 + 84*s273 + 8*s273*s274 + 4*s273^2 + 84*s274 + 4*s274^2 }-> 1 + s375 + (1 + s24) :|: s375 >= 0, s375 <= inf30, s265 >= 0, s265 <= 0 + 1, s266 >= 0, s266 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s267 >= 0, s267 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s268 >= 0, s268 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s269 >= 0, s269 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s270 >= 0, s270 <= 1 + (1 + 0) + 1, s271 >= 0, s271 <= 1 + (1 + (1 + 0)) + 1, s272 >= 0, s272 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s273 >= 0, s273 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s274 >= 0, s274 <= 1 + (1 + (1 + (1 + 0))) + 1, s24 >= 0, s24 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s275 + 8*s275*s276 + 8*s275*s277 + 8*s275*s278 + 8*s275*s279 + 8*s275*s280 + 8*s275*s281 + 8*s275*s282 + 8*s275*s283 + 8*s275*s284 + 4*s275^2 + 84*s276 + 8*s276*s277 + 8*s276*s278 + 8*s276*s279 + 8*s276*s280 + 8*s276*s281 + 8*s276*s282 + 8*s276*s283 + 8*s276*s284 + 4*s276^2 + 84*s277 + 8*s277*s278 + 8*s277*s279 + 8*s277*s280 + 8*s277*s281 + 8*s277*s282 + 8*s277*s283 + 8*s277*s284 + 4*s277^2 + 84*s278 + 8*s278*s279 + 8*s278*s280 + 8*s278*s281 + 8*s278*s282 + 8*s278*s283 + 8*s278*s284 + 4*s278^2 + 84*s279 + 8*s279*s280 + 8*s279*s281 + 8*s279*s282 + 8*s279*s283 + 8*s279*s284 + 4*s279^2 + 84*s280 + 8*s280*s281 + 8*s280*s282 + 8*s280*s283 + 8*s280*s284 + 4*s280^2 + 84*s281 + 8*s281*s282 + 8*s281*s283 + 8*s281*s284 + 4*s281^2 + 84*s282 + 8*s282*s283 + 8*s282*s284 + 4*s282^2 + 84*s283 + 8*s283*s284 + 4*s283^2 + 84*s284 + 4*s284^2 }-> 1 + s376 + (1 + s25) :|: s376 >= 0, s376 <= inf31, s275 >= 0, s275 <= 0 + 1, s276 >= 0, s276 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s277 >= 0, s277 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s278 >= 0, s278 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s279 >= 0, s279 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s280 >= 0, s280 <= 1 + (1 + 0) + 1, s281 >= 0, s281 <= 1 + (1 + (1 + 0)) + 1, s282 >= 0, s282 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s283 >= 0, s283 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s284 >= 0, s284 <= 1 + (1 + (1 + (1 + 0))) + 1, s25 >= 0, s25 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s285 + 8*s285*s286 + 8*s285*s287 + 8*s285*s288 + 8*s285*s289 + 8*s285*s290 + 8*s285*s291 + 8*s285*s292 + 8*s285*s293 + 8*s285*s294 + 4*s285^2 + 84*s286 + 8*s286*s287 + 8*s286*s288 + 8*s286*s289 + 8*s286*s290 + 8*s286*s291 + 8*s286*s292 + 8*s286*s293 + 8*s286*s294 + 4*s286^2 + 84*s287 + 8*s287*s288 + 8*s287*s289 + 8*s287*s290 + 8*s287*s291 + 8*s287*s292 + 8*s287*s293 + 8*s287*s294 + 4*s287^2 + 84*s288 + 8*s288*s289 + 8*s288*s290 + 8*s288*s291 + 8*s288*s292 + 8*s288*s293 + 8*s288*s294 + 4*s288^2 + 84*s289 + 8*s289*s290 + 8*s289*s291 + 8*s289*s292 + 8*s289*s293 + 8*s289*s294 + 4*s289^2 + 84*s290 + 8*s290*s291 + 8*s290*s292 + 8*s290*s293 + 8*s290*s294 + 4*s290^2 + 84*s291 + 8*s291*s292 + 8*s291*s293 + 8*s291*s294 + 4*s291^2 + 84*s292 + 8*s292*s293 + 8*s292*s294 + 4*s292^2 + 84*s293 + 8*s293*s294 + 4*s293^2 + 84*s294 + 4*s294^2 }-> 1 + s377 + (1 + s26) :|: s377 >= 0, s377 <= inf32, s285 >= 0, s285 <= 0 + 1, s286 >= 0, s286 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s287 >= 0, s287 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s288 >= 0, s288 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s289 >= 0, s289 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s290 >= 0, s290 <= 1 + (1 + 0) + 1, s291 >= 0, s291 <= 1 + (1 + (1 + 0)) + 1, s292 >= 0, s292 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s293 >= 0, s293 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s294 >= 0, s294 <= 1 + (1 + (1 + (1 + 0))) + 1, s26 >= 0, s26 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 445 + 84*s295 + 8*s295*s296 + 8*s295*s297 + 8*s295*s298 + 8*s295*s299 + 8*s295*s300 + 8*s295*s301 + 8*s295*s302 + 8*s295*s303 + 8*s295*s304 + 4*s295^2 + 84*s296 + 8*s296*s297 + 8*s296*s298 + 8*s296*s299 + 8*s296*s300 + 8*s296*s301 + 8*s296*s302 + 8*s296*s303 + 8*s296*s304 + 4*s296^2 + 84*s297 + 8*s297*s298 + 8*s297*s299 + 8*s297*s300 + 8*s297*s301 + 8*s297*s302 + 8*s297*s303 + 8*s297*s304 + 4*s297^2 + 84*s298 + 8*s298*s299 + 8*s298*s300 + 8*s298*s301 + 8*s298*s302 + 8*s298*s303 + 8*s298*s304 + 4*s298^2 + 84*s299 + 8*s299*s300 + 8*s299*s301 + 8*s299*s302 + 8*s299*s303 + 8*s299*s304 + 4*s299^2 + 84*s300 + 8*s300*s301 + 8*s300*s302 + 8*s300*s303 + 8*s300*s304 + 4*s300^2 + 84*s301 + 8*s301*s302 + 8*s301*s303 + 8*s301*s304 + 4*s301^2 + 84*s302 + 8*s302*s303 + 8*s302*s304 + 4*s302^2 + 84*s303 + 8*s303*s304 + 4*s303^2 + 84*s304 + 4*s304^2 }-> 1 + s378 + (1 + s27) :|: s378 >= 0, s378 <= inf33, s295 >= 0, s295 <= 0 + 1, s296 >= 0, s296 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s297 >= 0, s297 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s298 >= 0, s298 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s299 >= 0, s299 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s300 >= 0, s300 <= 1 + (1 + 0) + 1, s301 >= 0, s301 <= 1 + (1 + (1 + 0)) + 1, s302 >= 0, s302 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s303 >= 0, s303 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s304 >= 0, s304 <= 1 + (1 + (1 + (1 + 0))) + 1, s27 >= 0, s27 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s379 + (1 + s28) :|: s379 >= 0, s379 <= inf34, s28 >= 0, s28 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s380 + (1 + s29) :|: s380 >= 0, s380 <= inf35, s29 >= 0, s29 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s381 + (1 + s30) :|: s381 >= 0, s381 <= inf36, s30 >= 0, s30 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s382 + (1 + s31) :|: s382 >= 0, s382 <= inf37, s31 >= 0, s31 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s383 + (1 + s32) :|: s383 >= 0, s383 <= inf38, s32 >= 0, s32 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s384 + (1 + s33) :|: s384 >= 0, s384 <= inf39, s33 >= 0, s33 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s385 + (1 + s34) :|: s385 >= 0, s385 <= inf40, s34 >= 0, s34 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s386 + (1 + s35) :|: s386 >= 0, s386 <= inf41, s35 >= 0, s35 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s387 + (1 + s36) :|: s387 >= 0, s387 <= inf42, s36 >= 0, s36 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTINSERTIONSORTD(z) -{ 5 }-> 1 + s388 + (1 + s37) :|: s388 >= 0, s388 <= inf43, s37 >= 0, s37 <= 3, z >= 0, 0 = z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 3 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 2 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + 0)))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + 0))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + 0) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + 0)) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 1 :|: z >= 0, 1 + (1 + (1 + (1 + 0))) = 1 + z0', z0' >= 0 TESTLIST(z) -{ 2 }-> 1 + 0 :|: z >= 0, 0 = 0 insert(z, z') -{ 0 }-> s305 :|: s305 >= 0, s305 <= z' + z + 1, z' >= 0, z >= 0 insert(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> s306 :|: s306 >= 0, s306 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> s309 :|: s309 >= 0, s309 <= z' + z0 + z1 + 2, s50 >= 0, s50 <= 3, s51 >= 0, s51 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insert#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insert#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insert#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insert#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s307 :|: s307 >= 0, s307 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertD(z, z') -{ 0 }-> s310 :|: s310 >= 0, s310 <= z' + z + 1, z' >= 0, z >= 0 insertD(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> s311 :|: s311 >= 0, s311 <= z' + z0 + z1 + 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> s314 :|: s314 >= 0, s314 <= z' + z0 + z1 + 2, s52 >= 0, s52 <= 3, s53 >= 0, s53 <= 2, z1 >= 0, z0 >= 0, z = 1 + z0 + z1, z' >= 0 insertD#1(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 insertD#1(z, z') -{ 0 }-> 1 + z' + 0 :|: z' >= 0, z = 0 insertD#2(z, z', z'', z3) -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z' + (1 + z'' + z3) :|: z'' >= 0, z = 1, z' >= 0, z3 >= 0 insertD#2(z, z', z'', z3) -{ 0 }-> 1 + z'' + s312 :|: s312 >= 0, s312 <= z' + z3 + 1, z = 2, z'' >= 0, z' >= 0, z3 >= 0 insertionsort(z) -{ 0 }-> s320 :|: s320 >= 0, s320 <= z, z >= 0 insertionsort(z) -{ 0 }-> 0 :|: z >= 0 insertionsort#1(z) -{ 0 }-> s308 :|: s308 >= 0, s308 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> s322 :|: s321 >= 0, s321 <= z1, s322 >= 0, s322 <= z0 + s321 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsort#1(z) -{ 0 }-> 0 :|: z = 0 insertionsort#1(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD(z) -{ 0 }-> s324 :|: s324 >= 0, s324 <= z, z >= 0 insertionsortD(z) -{ 0 }-> 0 :|: z >= 0 insertionsortD#1(z) -{ 0 }-> s313 :|: s313 >= 0, s313 <= z0 + 0 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> s326 :|: s325 >= 0, s325 <= z1, s326 >= 0, s326 <= z0 + s325 + 1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 insertionsortD#1(z) -{ 0 }-> 0 :|: z = 0 insertionsortD#1(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsort(z) -{ 0 }-> s339 :|: s339 >= 0, s339 <= 1 + s75 + (1 + s76 + (1 + s77 + (1 + s78 + (1 + s79 + (1 + s80 + (1 + s81 + (1 + s82 + (1 + s83 + (1 + s84 + 0))))))))), s75 >= 0, s75 <= 0 + 1, s76 >= 0, s76 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s77 >= 0, s77 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s78 >= 0, s78 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s79 >= 0, s79 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s80 >= 0, s80 <= 1 + (1 + 0) + 1, s81 >= 0, s81 <= 1 + (1 + (1 + 0)) + 1, s82 >= 0, s82 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s83 >= 0, s83 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s84 >= 0, s84 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsort(z) -{ 0 }-> s340 :|: s340 >= 0, s340 <= 0, z >= 0 testInsertionsort(z) -{ 0 }-> 0 :|: z >= 0 testInsertionsortD(z) -{ 0 }-> s364 :|: s364 >= 0, s364 <= 1 + s85 + (1 + s86 + (1 + s87 + (1 + s88 + (1 + s89 + (1 + s90 + (1 + s91 + (1 + s92 + (1 + s93 + (1 + s94 + 0))))))))), s85 >= 0, s85 <= 0 + 1, s86 >= 0, s86 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s87 >= 0, s87 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s88 >= 0, s88 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s89 >= 0, s89 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s90 >= 0, s90 <= 1 + (1 + 0) + 1, s91 >= 0, s91 <= 1 + (1 + (1 + 0)) + 1, s92 >= 0, s92 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s93 >= 0, s93 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s94 >= 0, s94 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 testInsertionsortD(z) -{ 0 }-> s365 :|: s365 >= 0, s365 <= 0, z >= 0 testInsertionsortD(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 0 :|: z >= 0 testList(z) -{ 0 }-> 1 + s95 + (1 + s96 + (1 + s97 + (1 + s98 + (1 + s99 + (1 + s100 + (1 + s101 + (1 + s102 + (1 + s103 + (1 + s104 + 0))))))))) :|: s95 >= 0, s95 <= 0 + 1, s96 >= 0, s96 <= 1 + (1 + (1 + (1 + (1 + 0)))) + 1, s97 >= 0, s97 <= 1 + (1 + (1 + (1 + (1 + (1 + 0))))) + 1, s98 >= 0, s98 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))))) + 1, s99 >= 0, s99 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0))))))) + 1, s100 >= 0, s100 <= 1 + (1 + 0) + 1, s101 >= 0, s101 <= 1 + (1 + (1 + 0)) + 1, s102 >= 0, s102 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))))) + 1, s103 >= 0, s103 <= 1 + (1 + (1 + (1 + (1 + (1 + (1 + 0)))))) + 1, s104 >= 0, s104 <= 1 + (1 + (1 + (1 + 0))) + 1, z >= 0 Function symbols to be analyzed: Previous analysis results are: #ABS: runtime: O(1) [1], size: O(1) [3] #cklt: runtime: O(1) [0], size: O(1) [2] #compare: runtime: O(1) [0], size: O(1) [3] #CKLT: runtime: O(1) [0], size: O(1) [3] #COMPARE: runtime: O(1) [0], size: O(n^1) [8 + z + z'] TESTLIST: runtime: O(1) [2], size: O(1) [4] #abs: runtime: O(1) [0], size: O(n^1) [1 + z] #less: runtime: O(1) [0], size: O(1) [2] insert#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insert: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insert#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD#2: runtime: O(1) [0], size: O(n^1) [2 + z' + z'' + z3] insertD#1: runtime: O(1) [0], size: O(n^1) [1 + z + z'] insertD: runtime: O(1) [0], size: O(n^1) [1 + z + z'] #LESS: runtime: O(1) [1], size: O(n^1) [12 + z + z'] testList: runtime: O(1) [0], size: O(1) [74] insertionsort#1: runtime: O(1) [0], size: O(n^1) [z] insertionsortD#1: runtime: O(1) [0], size: O(n^1) [z] INSERTD#2: runtime: O(n^1) [3 + 4*z3], size: O(n^2) [2 + z'*z3 + 14*z3 + z3^2] INSERTD#1: runtime: O(n^1) [1 + 4*z], size: O(n^2) [28 + 30*z + 2*z*z' + 2*z^2 + 2*z'] INSERTD: runtime: O(n^1) [2 + 4*z'], size: O(n^2) [29 + 2*z + 2*z*z' + 30*z' + 2*z'^2] INSERT#1: runtime: O(n^1) [7 + 4*z], size: O(n^2) [78*z + 6*z*z' + 6*z^2] INSERT#2: runtime: O(n^1) [9 + 4*z3], size: O(n^2) [2 + 6*z'*z3 + 78*z3 + 6*z3^2] INSERT: runtime: O(n^1) [8 + 4*z'], size: O(n^2) [1 + 6*z*z' + 78*z' + 6*z'^2] insertionsort: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORT: runtime: O(n^2) [2 + 10*z + 4*z^2], size: INF INSERTIONSORT#1: runtime: O(n^2) [23 + 24*z + 8*z^2], size: INF insertionsortD: runtime: O(1) [0], size: O(n^1) [z] INSERTIONSORTD: runtime: O(n^2) [2 + 4*z + 4*z^2], size: INF INSERTIONSORTD#1: runtime: O(n^2) [11 + 12*z + 8*z^2], size: INF testInsertionsort: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORT: runtime: O(1) [22649], size: INF testInsertionsortD: runtime: O(1) [0], size: O(1) [74] TESTINSERTIONSORTD: runtime: O(1) [22205], size: INF ---------------------------------------- (163) FinalProof (FINISHED) Computed overall runtime complexity ---------------------------------------- (164) BOUNDS(1, n^2) ---------------------------------------- (165) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) Transformed a relative TRS into a decreasing-loop problem. ---------------------------------------- (166) Obligation: Analyzing the following TRS for decreasing loops: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^2). The TRS R consists of the following rules: #ABS(#0) -> c15 #ABS(#neg(z0)) -> c16 #ABS(#pos(z0)) -> c17 #ABS(#s(z0)) -> c18 #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERT#1(nil, z0) -> c22 INSERT#2(#false, z0, z1, z2) -> c23 INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERTD#1(nil, z0) -> c27 INSERTD#2(#false, z0, z1, z2) -> c28 INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) INSERTIONSORT#1(nil) -> c32 INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) INSERTIONSORTD#1(nil) -> c35 TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) TESTLIST(z0) -> c38(#ABS(#0)) TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) The (relative) TRS S consists of the following rules: #CKLT(#EQ) -> c #CKLT(#GT) -> c1 #CKLT(#LT) -> c2 #COMPARE(#0, #0) -> c3 #COMPARE(#0, #neg(z0)) -> c4 #COMPARE(#0, #pos(z0)) -> c5 #COMPARE(#0, #s(z0)) -> c6 #COMPARE(#neg(z0), #0) -> c7 #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) #COMPARE(#neg(z0), #pos(z1)) -> c9 #COMPARE(#pos(z0), #0) -> c10 #COMPARE(#pos(z0), #neg(z1)) -> c11 #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) #COMPARE(#s(z0), #0) -> c13 #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) #cklt(#EQ) -> #false #cklt(#GT) -> #false #cklt(#LT) -> #true #compare(#0, #0) -> #EQ #compare(#0, #neg(z0)) -> #GT #compare(#0, #pos(z0)) -> #LT #compare(#0, #s(z0)) -> #LT #compare(#neg(z0), #0) -> #LT #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) #compare(#neg(z0), #pos(z1)) -> #LT #compare(#pos(z0), #0) -> #GT #compare(#pos(z0), #neg(z1)) -> #GT #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) #compare(#s(z0), #0) -> #GT #compare(#s(z0), #s(z1)) -> #compare(z0, z1) #abs(#0) -> #0 #abs(#neg(z0)) -> #pos(z0) #abs(#pos(z0)) -> #pos(z0) #abs(#s(z0)) -> #pos(#s(z0)) #less(z0, z1) -> #cklt(#compare(z0, z1)) insert(z0, z1) -> insert#1(z1, z0) insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) insert#1(nil, z0) -> ::(z0, nil) insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) insertD(z0, z1) -> insertD#1(z1, z0) insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) insertD#1(nil, z0) -> ::(z0, nil) insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) insertionsort(z0) -> insertionsort#1(z0) insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) insertionsort#1(nil) -> nil insertionsortD(z0) -> insertionsortD#1(z0) insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) insertionsortD#1(nil) -> nil testInsertionsort(z0) -> insertionsort(testList(#unit)) testInsertionsortD(z0) -> insertionsortD(testList(#unit)) testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) Rewrite Strategy: INNERMOST ---------------------------------------- (167) DecreasingLoopProof (LOWER BOUND(ID)) The following loop(s) give(s) rise to the lower bound Omega(n^1): The rewrite sequence INSERTIONSORT#1(::(z0, z1)) ->^+ c31(INSERT(z0, insertionsort(z1)), c30(INSERTIONSORT#1(z1))) gives rise to a decreasing loop by considering the right hand sides subterm at position [1,0]. The pumping substitution is [z1 / ::(z0, z1)]. The result substitution is [ ]. ---------------------------------------- (168) Complex Obligation (BEST) ---------------------------------------- (169) Obligation: Proved the lower bound n^1 for the following obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^2). The TRS R consists of the following rules: #ABS(#0) -> c15 #ABS(#neg(z0)) -> c16 #ABS(#pos(z0)) -> c17 #ABS(#s(z0)) -> c18 #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERT#1(nil, z0) -> c22 INSERT#2(#false, z0, z1, z2) -> c23 INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERTD#1(nil, z0) -> c27 INSERTD#2(#false, z0, z1, z2) -> c28 INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) INSERTIONSORT#1(nil) -> c32 INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) INSERTIONSORTD#1(nil) -> c35 TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) TESTLIST(z0) -> c38(#ABS(#0)) TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) The (relative) TRS S consists of the following rules: #CKLT(#EQ) -> c #CKLT(#GT) -> c1 #CKLT(#LT) -> c2 #COMPARE(#0, #0) -> c3 #COMPARE(#0, #neg(z0)) -> c4 #COMPARE(#0, #pos(z0)) -> c5 #COMPARE(#0, #s(z0)) -> c6 #COMPARE(#neg(z0), #0) -> c7 #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) #COMPARE(#neg(z0), #pos(z1)) -> c9 #COMPARE(#pos(z0), #0) -> c10 #COMPARE(#pos(z0), #neg(z1)) -> c11 #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) #COMPARE(#s(z0), #0) -> c13 #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) #cklt(#EQ) -> #false #cklt(#GT) -> #false #cklt(#LT) -> #true #compare(#0, #0) -> #EQ #compare(#0, #neg(z0)) -> #GT #compare(#0, #pos(z0)) -> #LT #compare(#0, #s(z0)) -> #LT #compare(#neg(z0), #0) -> #LT #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) #compare(#neg(z0), #pos(z1)) -> #LT #compare(#pos(z0), #0) -> #GT #compare(#pos(z0), #neg(z1)) -> #GT #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) #compare(#s(z0), #0) -> #GT #compare(#s(z0), #s(z1)) -> #compare(z0, z1) #abs(#0) -> #0 #abs(#neg(z0)) -> #pos(z0) #abs(#pos(z0)) -> #pos(z0) #abs(#s(z0)) -> #pos(#s(z0)) #less(z0, z1) -> #cklt(#compare(z0, z1)) insert(z0, z1) -> insert#1(z1, z0) insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) insert#1(nil, z0) -> ::(z0, nil) insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) insertD(z0, z1) -> insertD#1(z1, z0) insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) insertD#1(nil, z0) -> ::(z0, nil) insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) insertionsort(z0) -> insertionsort#1(z0) insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) insertionsort#1(nil) -> nil insertionsortD(z0) -> insertionsortD#1(z0) insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) insertionsortD#1(nil) -> nil testInsertionsort(z0) -> insertionsort(testList(#unit)) testInsertionsortD(z0) -> insertionsortD(testList(#unit)) testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) Rewrite Strategy: INNERMOST ---------------------------------------- (170) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (171) BOUNDS(n^1, INF) ---------------------------------------- (172) Obligation: Analyzing the following TRS for decreasing loops: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^2). The TRS R consists of the following rules: #ABS(#0) -> c15 #ABS(#neg(z0)) -> c16 #ABS(#pos(z0)) -> c17 #ABS(#s(z0)) -> c18 #LESS(z0, z1) -> c19(#CKLT(#compare(z0, z1)), #COMPARE(z0, z1)) INSERT(z0, z1) -> c20(INSERT#1(z1, z0)) INSERT#1(::(z0, z1), z2) -> c21(INSERT#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERT#1(nil, z0) -> c22 INSERT#2(#false, z0, z1, z2) -> c23 INSERT#2(#true, z0, z1, z2) -> c24(INSERT(z0, z2)) INSERTD(z0, z1) -> c25(INSERTD#1(z1, z0)) INSERTD#1(::(z0, z1), z2) -> c26(INSERTD#2(#less(z0, z2), z2, z0, z1), #LESS(z0, z2)) INSERTD#1(nil, z0) -> c27 INSERTD#2(#false, z0, z1, z2) -> c28 INSERTD#2(#true, z0, z1, z2) -> c29(INSERTD(z0, z2)) INSERTIONSORT(z0) -> c30(INSERTIONSORT#1(z0)) INSERTIONSORT#1(::(z0, z1)) -> c31(INSERT(z0, insertionsort(z1)), INSERTIONSORT(z1)) INSERTIONSORT#1(nil) -> c32 INSERTIONSORTD(z0) -> c33(INSERTIONSORTD#1(z0)) INSERTIONSORTD#1(::(z0, z1)) -> c34(INSERTD(z0, insertionsortD(z1)), INSERTIONSORTD(z1)) INSERTIONSORTD#1(nil) -> c35 TESTINSERTIONSORT(z0) -> c36(INSERTIONSORT(testList(#unit)), TESTLIST(#unit)) TESTINSERTIONSORTD(z0) -> c37(INSERTIONSORTD(testList(#unit)), TESTLIST(#unit)) TESTLIST(z0) -> c38(#ABS(#0)) TESTLIST(z0) -> c39(#ABS(#pos(#s(#s(#s(#s(#0))))))) TESTLIST(z0) -> c40(#ABS(#pos(#s(#s(#s(#s(#s(#0)))))))) TESTLIST(z0) -> c41(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))))) TESTLIST(z0) -> c42(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#0)))))))))) TESTLIST(z0) -> c43(#ABS(#pos(#s(#0)))) TESTLIST(z0) -> c44(#ABS(#pos(#s(#s(#0))))) TESTLIST(z0) -> c45(#ABS(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))) TESTLIST(z0) -> c46(#ABS(#pos(#s(#s(#s(#s(#s(#s(#0))))))))) TESTLIST(z0) -> c47(#ABS(#pos(#s(#s(#s(#0)))))) The (relative) TRS S consists of the following rules: #CKLT(#EQ) -> c #CKLT(#GT) -> c1 #CKLT(#LT) -> c2 #COMPARE(#0, #0) -> c3 #COMPARE(#0, #neg(z0)) -> c4 #COMPARE(#0, #pos(z0)) -> c5 #COMPARE(#0, #s(z0)) -> c6 #COMPARE(#neg(z0), #0) -> c7 #COMPARE(#neg(z0), #neg(z1)) -> c8(#COMPARE(z1, z0)) #COMPARE(#neg(z0), #pos(z1)) -> c9 #COMPARE(#pos(z0), #0) -> c10 #COMPARE(#pos(z0), #neg(z1)) -> c11 #COMPARE(#pos(z0), #pos(z1)) -> c12(#COMPARE(z0, z1)) #COMPARE(#s(z0), #0) -> c13 #COMPARE(#s(z0), #s(z1)) -> c14(#COMPARE(z0, z1)) #cklt(#EQ) -> #false #cklt(#GT) -> #false #cklt(#LT) -> #true #compare(#0, #0) -> #EQ #compare(#0, #neg(z0)) -> #GT #compare(#0, #pos(z0)) -> #LT #compare(#0, #s(z0)) -> #LT #compare(#neg(z0), #0) -> #LT #compare(#neg(z0), #neg(z1)) -> #compare(z1, z0) #compare(#neg(z0), #pos(z1)) -> #LT #compare(#pos(z0), #0) -> #GT #compare(#pos(z0), #neg(z1)) -> #GT #compare(#pos(z0), #pos(z1)) -> #compare(z0, z1) #compare(#s(z0), #0) -> #GT #compare(#s(z0), #s(z1)) -> #compare(z0, z1) #abs(#0) -> #0 #abs(#neg(z0)) -> #pos(z0) #abs(#pos(z0)) -> #pos(z0) #abs(#s(z0)) -> #pos(#s(z0)) #less(z0, z1) -> #cklt(#compare(z0, z1)) insert(z0, z1) -> insert#1(z1, z0) insert#1(::(z0, z1), z2) -> insert#2(#less(z0, z2), z2, z0, z1) insert#1(nil, z0) -> ::(z0, nil) insert#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insert#2(#true, z0, z1, z2) -> ::(z1, insert(z0, z2)) insertD(z0, z1) -> insertD#1(z1, z0) insertD#1(::(z0, z1), z2) -> insertD#2(#less(z0, z2), z2, z0, z1) insertD#1(nil, z0) -> ::(z0, nil) insertD#2(#false, z0, z1, z2) -> ::(z0, ::(z1, z2)) insertD#2(#true, z0, z1, z2) -> ::(z1, insertD(z0, z2)) insertionsort(z0) -> insertionsort#1(z0) insertionsort#1(::(z0, z1)) -> insert(z0, insertionsort(z1)) insertionsort#1(nil) -> nil insertionsortD(z0) -> insertionsortD#1(z0) insertionsortD#1(::(z0, z1)) -> insertD(z0, insertionsortD(z1)) insertionsortD#1(nil) -> nil testInsertionsort(z0) -> insertionsort(testList(#unit)) testInsertionsortD(z0) -> insertionsortD(testList(#unit)) testList(z0) -> ::(#abs(#0), ::(#abs(#pos(#s(#s(#s(#s(#0)))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#0))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#s(#0))))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#0))))))))), ::(#abs(#pos(#s(#0))), ::(#abs(#pos(#s(#s(#0)))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#s(#s(#0)))))))))), ::(#abs(#pos(#s(#s(#s(#s(#s(#s(#0)))))))), ::(#abs(#pos(#s(#s(#s(#0))))), nil)))))))))) Rewrite Strategy: INNERMOST