/export/starexec/sandbox/solver/bin/starexec_run_c /export/starexec/sandbox/benchmark/theBenchmark.c /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE proof of /export/starexec/sandbox/benchmark/theBenchmark.c # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination of the given C Problem could not be shown: (0) C Problem (1) CToLLVMProof [EQUIVALENT, 175 ms] (2) LLVM problem (3) LLVMToTerminationGraphProof [EQUIVALENT, 20.6 s] (4) LLVM Symbolic Execution Graph (5) SymbolicExecutionGraphToLassoProof [COMPLETE, 0 ms] (6) AND (7) LLVM Symbolic Execution Lasso (8) Lasso2IRS [SOUND, 183 ms] (9) IntTRS (10) IRS2T2 [EQUIVALENT, 0 ms] (11) T2IntSys (12) T2 [EQUIVALENT, 2243 ms] (13) YES (14) LLVM Symbolic Execution Lasso (15) Lasso2IRS [SOUND, 173 ms] (16) IntTRS (17) IRS2T2 [EQUIVALENT, 0 ms] (18) T2IntSys (19) T2 [EQUIVALENT, 2252 ms] (20) YES (21) LLVM Symbolic Execution Lasso (22) Lasso2IRS [SOUND, 173 ms] (23) IntTRS (24) IRS2T2 [EQUIVALENT, 0 ms] (25) T2IntSys (26) T2 [EQUIVALENT, 2232 ms] (27) YES (28) LLVM Symbolic Execution Lasso (29) Lasso2IRS [SOUND, 203 ms] (30) IntTRS (31) IRS2T2 [EQUIVALENT, 0 ms] (32) T2IntSys (33) T2 [EQUIVALENT, 2222 ms] (34) YES (35) LLVM Symbolic Execution Lasso (36) Lasso2IRS [SOUND, 180 ms] (37) IntTRS (38) IRS2T2 [EQUIVALENT, 0 ms] (39) T2IntSys (40) T2 [EQUIVALENT, 2222 ms] (41) YES (42) LLVM Symbolic Execution Lasso (43) Lasso2IRS [SOUND, 178 ms] (44) IntTRS (45) IRS2T2 [EQUIVALENT, 0 ms] (46) T2IntSys (47) T2 [EQUIVALENT, 2272 ms] (48) YES (49) LLVM Symbolic Execution Lasso (50) Lasso2IRS [SOUND, 194 ms] (51) IntTRS (52) IRS2T2 [EQUIVALENT, 0 ms] (53) T2IntSys (54) T2 [EQUIVALENT, 2242 ms] (55) YES (56) LLVM Symbolic Execution Lasso (57) Lasso2IRS [SOUND, 156 ms] (58) IntTRS (59) IRS2T2 [EQUIVALENT, 0 ms] (60) T2IntSys (61) T2 [EQUIVALENT, 2272 ms] (62) YES (63) LLVM Symbolic Execution Lasso (64) Lasso2IRS [SOUND, 165 ms] (65) IntTRS (66) IRS2T2 [EQUIVALENT, 0 ms] (67) T2IntSys (68) T2 [EQUIVALENT, 2252 ms] (69) YES (70) LLVM Symbolic Execution Lasso (71) Lasso2IRS [SOUND, 183 ms] (72) IntTRS (73) IRS2T2 [EQUIVALENT, 0 ms] (74) T2IntSys (75) T2 Underapproximation [COMPLETE, 41.4 s] (76) T2IntSys (77) T2 Underapproximation [COMPLETE, 9492 ms] (78) T2IntSys (79) LLVM Symbolic Execution Lasso (80) Lasso2IRS [SOUND, 171 ms] (81) IntTRS (82) IRS2T2 [EQUIVALENT, 0 ms] (83) T2IntSys (84) T2 Underapproximation [COMPLETE, 45.7 s] (85) T2IntSys (86) LLVM Symbolic Execution Lasso (87) Lasso2IRS [SOUND, 174 ms] (88) IntTRS (89) IRS2T2 [EQUIVALENT, 0 ms] (90) T2IntSys (91) T2 [EQUIVALENT, 612 ms] (92) YES (93) SymbolicExecutionGraphToSCCProof [SOUND, 0 ms] (94) AND (95) LLVM Symbolic Execution SCC (96) SCC2IRS [SOUND, 73 ms] (97) IntTRS (98) IRS2T2 [EQUIVALENT, 0 ms] (99) T2IntSys (100) T2 [EQUIVALENT, 2171 ms] (101) YES (102) LLVM Symbolic Execution SCC (103) SCC2IRS [SOUND, 107 ms] (104) IntTRS (105) IRS2T2 [EQUIVALENT, 0 ms] (106) T2IntSys (107) T2 [COMPLETE, 1013 ms] (108) NO (109) SCC2IRS [SOUND, 0 ms] (110) IntTRS (111) TerminationGraphProcessor [EQUIVALENT, 17 ms] (112) IntTRS (113) IntTRSCompressionProof [EQUIVALENT, 0 ms] (114) IntTRS (115) IntTRSPeriodicNontermProof [COMPLETE, 0 ms] (116) NO (117) LLVM Symbolic Execution SCC (118) SCC2IRS [SOUND, 123 ms] (119) IntTRS (120) IRS2T2 [EQUIVALENT, 0 ms] (121) T2IntSys (122) T2 [EQUIVALENT, 672 ms] (123) YES (124) SEGraph to IRS [SOUND, 772 ms] (125) IntTRS (126) IRS2T2 [EQUIVALENT, 0 ms] (127) T2IntSys (128) T2 Underapproximation [COMPLETE, 128.0 s] (129) T2IntSys (130) T2 Underapproximation [COMPLETE, 102.3 s] (131) T2IntSys ---------------------------------------- (0) Obligation: c file /export/starexec/sandbox/benchmark/theBenchmark.c ---------------------------------------- (1) CToLLVMProof (EQUIVALENT) Compiled c-file /export/starexec/sandbox/benchmark/theBenchmark.c to LLVM. ---------------------------------------- (2) Obligation: LLVM Problem Aliases: Data layout: "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" Machine: "x86_64-pc-linux-gnu" Type definitions: Global variables: Function declarations and definitions: *BasicFunctionTypename: "__VERIFIER_nondet_int" returnParam: i32 parameters: () variableLength: false visibilityType: DEFAULT callingConvention: ccc *BasicFunctionTypename: "__VERIFIER_error" returnParam: BasicVoidType parameters: () variableLength: true visibilityType: DEFAULT callingConvention: ccc *BasicFunctionTypename: "mult" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: (n i32, m i32) variableLength: false visibilityType: DEFAULT callingConvention: ccc 0: %1 = alloca i32, align 4 %2 = alloca i32, align 4 %3 = alloca i32, align 4 store %n, %2 store %m, %3 %4 = load %3 %5 = icmp slt %4 0 br %5, %6, %11 6: %7 = load %2 %8 = load %3 %9 = sub 0 %8 %10 = call i32 @mult(i32 %7, i32 %9) store %10, %1 br %26 11: %12 = load %3 %13 = icmp eq %12 0 br %13, %14, %15 14: store 0, %1 br %26 15: %16 = load %3 %17 = icmp eq %16 1 br %17, %18, %19 18: store 1, %1 br %26 19: %20 = load %2 %21 = load %2 %22 = load %3 %23 = sub %22 1 %24 = call i32 @mult(i32 %21, i32 %23) %25 = add %20 %24 store %25, %1 br %26 26: %27 = load %1 ret %27 *BasicFunctionTypename: "multiple_of" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: (n i32, m i32) variableLength: false visibilityType: DEFAULT callingConvention: ccc 0: %1 = alloca i32, align 4 %2 = alloca i32, align 4 %3 = alloca i32, align 4 store %n, %2 store %m, %3 %4 = load %3 %5 = icmp slt %4 0 br %5, %6, %11 6: %7 = load %2 %8 = load %3 %9 = sub 0 %8 %10 = call i32 @multiple_of(i32 %7, i32 %9) store %10, %1 br %33 11: %12 = load %2 %13 = icmp slt %12 0 br %13, %14, %19 14: %15 = load %2 %16 = sub 0 %15 %17 = load %3 %18 = call i32 @multiple_of(i32 %16, i32 %17) store %18, %1 br %33 19: %20 = load %3 %21 = icmp eq %20 0 br %21, %22, %23 22: store 0, %1 br %33 23: %24 = load %2 %25 = icmp eq %24 0 br %25, %26, %27 26: store 1, %1 br %33 27: %28 = load %2 %29 = load %3 %30 = sub %28 %29 %31 = load %3 %32 = call i32 @multiple_of(i32 %30, i32 %31) store %32, %1 br %33 33: %34 = load %1 ret %34 *BasicFunctionTypename: "is_prime" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: (n i32) variableLength: false visibilityType: DEFAULT callingConvention: ccc 0: %1 = alloca i32, align 4 store %n, %1 %2 = load %1 %3 = load %1 %4 = sub %3 1 %5 = call i32 @is_prime_(i32 %2, i32 %4) ret %5 *BasicFunctionTypename: "is_prime_" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: (n i32, m i32) variableLength: false visibilityType: DEFAULT callingConvention: ccc 0: %1 = alloca i32, align 4 %2 = alloca i32, align 4 %3 = alloca i32, align 4 store %n, %2 store %m, %3 %4 = load %2 %5 = icmp sle %4 1 br %5, %6, %7 6: store 0, %1 br %29 7: %8 = load %2 %9 = icmp eq %8 2 br %9, %10, %11 10: store 1, %1 br %29 11: %12 = load %2 %13 = icmp sgt %12 2 br %13, %14, %29 14: %15 = load %3 %16 = icmp sle %15 1 br %16, %17, %18 17: store 1, %1 br %29 18: %19 = load %2 %20 = load %3 %21 = call i32 @multiple_of(i32 %19, i32 %20) %22 = icmp eq %21 0 br %22, %23, %24 23: store 0, %1 br %29 24: %25 = load %2 %26 = load %3 %27 = sub %26 1 %28 = call i32 @is_prime_(i32 %25, i32 %27) store %28, %1 br %29 29: %30 = load %1 ret %30 *BasicFunctionTypename: "main" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: () variableLength: false visibilityType: DEFAULT callingConvention: ccc 0: %1 = alloca i32, align 4 %n = alloca i32, align 4 %result = alloca i32, align 4 %f1 = alloca i32, align 4 %f2 = alloca i32, align 4 store 0, %1 %2 = call i32 @__VERIFIER_nondet_int() store %2, %n %3 = load %n %4 = icmp slt %3 1 br %4, %8, %5 5: %6 = load %n %7 = icmp sgt %6 46340 br %7, %8, %9 8: store 0, %1 br %45 9: %10 = load %n %11 = call i32 @is_prime(i32 %10) store %11, %result %12 = call i32 @__VERIFIER_nondet_int() store %12, %f1 %13 = load %f1 %14 = icmp slt %13 1 br %14, %18, %15 15: %16 = load %f1 %17 = icmp sgt %16 46340 br %17, %18, %19 18: store 0, %1 br %45 19: %20 = call i32 @__VERIFIER_nondet_int() store %20, %f2 %21 = load %f1 %22 = icmp slt %21 1 br %22, %26, %23 23: %24 = load %f1 %25 = icmp sgt %24 46340 br %25, %26, %27 26: store 0, %1 br %45 27: %28 = load %result %29 = icmp eq %28 1 br %29, %30, %44 30: %31 = load %f1 %32 = load %f2 %33 = call i32 @mult(i32 %31, i32 %32) %34 = load %n %35 = icmp eq %33 %34 br %35, %36, %44 36: %37 = load %f1 %38 = icmp sgt %37 1 br %38, %39, %44 39: %40 = load %f2 %41 = icmp sgt %40 1 br %41, %42, %44 42: br %43 43: Unnamed Call-Instruction = call BasicVoidType (...)* @__VERIFIER_error() noreturn unreachable 44: store 0, %1 br %45 45: %46 = load %1 ret %46 Analyze Termination of all function calls matching the pattern: main() ---------------------------------------- (3) LLVMToTerminationGraphProof (EQUIVALENT) Constructed symbolic execution graph for LLVM program and proved memory safety. ---------------------------------------- (4) Obligation: SE Graph ---------------------------------------- (5) SymbolicExecutionGraphToLassoProof (COMPLETE) Converted SEGraph to 12 dependent lassos. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: Lasso ---------------------------------------- (8) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 86 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_554 -> f_1530(v7449:0, v7607:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v7449:0 > 0 && v4718:0 > 0 f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_554 -> f_1530(v7607:0) :|: TRUE f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 ---------------------------------------- (9) Obligation: Rules: f_554 -> f_1530(v7607:0) :|: TRUE f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 Start term: f_554 ---------------------------------------- (10) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_554_1,1) (f_1530_1,2) ---------------------------------------- (11) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 2; FROM: 2; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 2; ---------------------------------------- (12) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (13) YES ---------------------------------------- (14) Obligation: Lasso ---------------------------------------- (15) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 f_554 -> f_1530(v7449:0, v7607:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v7449:0 > 0 && v4718:0 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_554 -> f_1530(v7607:0) :|: TRUE ---------------------------------------- (16) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 f_554 -> f_1530(v7607:0) :|: TRUE Start term: f_554 ---------------------------------------- (17) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) (f_554_1,2) ---------------------------------------- (18) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 1; ---------------------------------------- (19) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (20) YES ---------------------------------------- (21) Obligation: Lasso ---------------------------------------- (22) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 <= v4429 f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: 0 = 0 f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1527(v4429, v4545, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 f_554 -> f_1530(v4429:0, v4545:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 && v4718:0 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_554 -> f_1530(v4545:0) :|: TRUE ---------------------------------------- (23) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 f_554 -> f_1530(v4545:0) :|: TRUE Start term: f_554 ---------------------------------------- (24) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) (f_554_1,2) ---------------------------------------- (25) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 1; ---------------------------------------- (26) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (27) YES ---------------------------------------- (28) Obligation: Lasso ---------------------------------------- (29) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 86 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_554 -> f_1530(v7449:0, v7607:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v7449:0 > 0 && v4718:0 > 0 f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_554 -> f_1530(v7607:0) :|: TRUE f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 ---------------------------------------- (30) Obligation: Rules: f_554 -> f_1530(v7607:0) :|: TRUE f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 Start term: f_554 ---------------------------------------- (31) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_554_1,1) (f_1530_1,2) ---------------------------------------- (32) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 2; FROM: 2; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 2; ---------------------------------------- (33) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (34) YES ---------------------------------------- (35) Obligation: Lasso ---------------------------------------- (36) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 f_554 -> f_1530(v7449:0, v7607:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v7449:0 > 0 && v4718:0 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_554 -> f_1530(v7607:0) :|: TRUE ---------------------------------------- (37) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 f_554 -> f_1530(v7607:0) :|: TRUE Start term: f_554 ---------------------------------------- (38) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) (f_554_1,2) ---------------------------------------- (39) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 1; ---------------------------------------- (40) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (41) YES ---------------------------------------- (42) Obligation: Lasso ---------------------------------------- (43) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 <= v4429 f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: 0 = 0 f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1527(v4429, v4545, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 f_554 -> f_1530(v4429:0, v4545:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 && v4718:0 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_554 -> f_1530(v4545:0) :|: TRUE ---------------------------------------- (44) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 f_554 -> f_1530(v4545:0) :|: TRUE Start term: f_554 ---------------------------------------- (45) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) (f_554_1,2) ---------------------------------------- (46) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 1; ---------------------------------------- (47) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (48) YES ---------------------------------------- (49) Obligation: Lasso ---------------------------------------- (50) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 86 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_554 -> f_1530(v7449:0, v7607:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v7449:0 > 0 && v4718:0 > 0 f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_554 -> f_1530(v7607:0) :|: TRUE f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 ---------------------------------------- (51) Obligation: Rules: f_554 -> f_1530(v7607:0) :|: TRUE f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 Start term: f_554 ---------------------------------------- (52) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_554_1,1) (f_1530_1,2) ---------------------------------------- (53) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 2; FROM: 2; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 2; ---------------------------------------- (54) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (55) YES ---------------------------------------- (56) Obligation: Lasso ---------------------------------------- (57) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 f_554 -> f_1530(v7449:0, v7607:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v7449:0 > 0 && v4718:0 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_554 -> f_1530(v7607:0) :|: TRUE ---------------------------------------- (58) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 f_554 -> f_1530(v7607:0) :|: TRUE Start term: f_554 ---------------------------------------- (59) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) (f_554_1,2) ---------------------------------------- (60) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 1; ---------------------------------------- (61) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (62) YES ---------------------------------------- (63) Obligation: Lasso ---------------------------------------- (64) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 <= v4429 f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: 0 = 0 f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1527(v4429, v4545, 1) :|: TRUE Combined rules. Obtained 4 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 f_554 -> f_1530(v4429:0, v4545:0, v4718:0, 3 + v4718:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 && v4718:0 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 4 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_554 -> f_1530(v4545:0) :|: TRUE ---------------------------------------- (65) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 f_554 -> f_1530(v4545:0) :|: TRUE Start term: f_554 ---------------------------------------- (66) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) (f_554_1,2) ---------------------------------------- (67) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := nondet(); assume(0 = 0); x0 := oldX1; TO: 1; ---------------------------------------- (68) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (69) YES ---------------------------------------- (70) Obligation: Lasso ---------------------------------------- (71) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) -> f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) :|: 1 <= v4500 && v4501 = 3 + v4500 && 4 <= v4501 f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) -> f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 1 <= v4519 && v4520 = 3 + v4519 && 4 <= v4520 f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 < 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 <= v4465 f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: v4713 + v4465 = 0 && 1 <= v4713 f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) :|: 0 = 0 f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) :|: TRUE f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) -> f_1441(v4713, v4466, 2) :|: TRUE f_1441(v4465, v4466, 2) -> f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) :|: 1 <= v4483 && v4484 = 3 + v4483 && 4 <= v4484 f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 != 0 f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: TRUE f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4722 + v4466 = v4465 f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) :|: 0 = 0 f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) :|: TRUE f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) -> f_1441(v4722, v4466, 2) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1330(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_1330(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) -> f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) :|: 1 <= v4137 && v4138 = 3 + v4137 && 4 <= v4138 f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) -> f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) :|: 1 <= v4178 && v4179 = 3 + v4178 && 4 <= v4179 f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) -> f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 1 <= v4198 && v4199 = 3 + v4198 && 4 <= v4199 f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 0 = 0 f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) :|: 1 < v4038 f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) -> f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: TRUE f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: v4038 != 2 && 3 <= v4038 f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: TRUE f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 < v4039 f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) :|: 0 = 0 f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1435(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 1, 2, 4) :|: TRUE f_1435(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 1, 2, 4) -> f_1441(v4038, v4039, 2) :|: TRUE Combined rules. Obtained 5 rulesP rules: f_554 -> f_1446(v11:0, v16:0, v4483:0, v4484:0, 3, 2, 1, 4) :|: FALSE f_554 -> f_1446(1 + v16:0, v16:0, v4483:0, 3 + v4483:0, 3, 2, 1, 4) :|: v16:0 > 1 && v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v13:0 > 0 && v4137:0 > 0 && v4178:0 > 0 && v4198:0 > 0 && v4483:0 > 0 f_1446(v4465:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4713:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4465:0 < 0 && v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4483:1 > 0 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && v4483:1 > 0 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4722:0 + v4466:0 > 0 && v4519:0 > 0 && v4500:0 > 0 && v4483:1 > 0 Filtered unneeded arguments: f_1446(x1, x2, x3, x4, x5, x6, x7, x8) -> f_1446(x1, x2) Removed division, modulo operations, cleaned up constraints. Obtained 5 rules.P rules: f_554 -> f_1446(v11:0, v16:0) :|: FALSE f_554 -> f_1446(1 + v16:0, v16:0) :|: v16:0 > 1 f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4465:0 < 0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 ---------------------------------------- (72) Obligation: Rules: f_554 -> f_1446(v11:0, v16:0) :|: FALSE f_554 -> f_1446(1 + x, x) :|: x > 1 f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4465:0 < 0 f_1446(x1, x2) -> f_1446(x3, x2) :|: x3 + x2 > -1 && x3 + x2 < 0 && x1 = x3 + x2 f_1446(x4, x5) -> f_1446(x6, x5) :|: x6 + x5 > 0 && x4 = x6 + x5 Start term: f_554 ---------------------------------------- (73) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_554_2,1) (f_1446_2,2) ---------------------------------------- (74) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); oldX3 := nondet(); assume(0 = 1); x0 := oldX2; x1 := oldX3; TO: 2; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); assume(oldX2 > 1); x0 := 1 + oldX2; x1 := oldX2; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := -(oldX0 - 0); assume(oldX2 > 0 && oldX2 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); x1 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := oldX0 - oldX1; assume(oldX2 + oldX1 > -1 && oldX2 + oldX1 < 0 && oldX0 = oldX2 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := oldX0 - oldX1; assume(oldX2 + oldX1 > 0 && oldX0 = oldX2 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; TO: 2; ---------------------------------------- (75) T2 Underapproximation (COMPLETE) Added the following guard statements: ---------------------------------------- (76) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); oldX3 := nondet(); assume(0 = 1); x0 := oldX2; x1 := oldX3; TO: 2; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); assume(oldX2 > 1); x0 := oldX2 + 1; x1 := oldX2; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := 0 - x0; assume(0 - x0 > 0 && 0 - x0 + x0 = 0 && x0 < 0); x0 := 0 - x0; x1 := x1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := x0 - x1; assume(x0 - x1 + x1 > -1 && x0 - x1 + x1 < 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := x0 - x1; assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; TO: 2; ---------------------------------------- (77) T2 Underapproximation (COMPLETE) Added the following guard statements: ---------------------------------------- (78) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); oldX3 := nondet(); assume(0 = 1); x0 := oldX2; x1 := oldX3; TO: 2; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); assume(oldX2 > 1); x0 := oldX2 + 1; x1 := oldX2; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := -(x0) - 0; assume(0 - x0 > 0 && 0 - x0 + x0 = 0 && x0 < 0); x0 := -(x0) - 0; x1 := x1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := x0 - x1; assume(x0 - x1 + x1 > -1 && x0 - x1 + x1 < 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := x0 - x1; assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; TO: 2; ---------------------------------------- (79) Obligation: Lasso ---------------------------------------- (80) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 85 rulesP rules: f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) -> f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) :|: 1 <= v4500 && v4501 = 3 + v4500 && 4 <= v4501 f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) -> f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 1 <= v4519 && v4520 = 3 + v4519 && 4 <= v4520 f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 < 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 <= v4465 f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: v4713 + v4465 = 0 && 1 <= v4713 f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) :|: 0 = 0 f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) :|: TRUE f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) -> f_1441(v4713, v4466, 2) :|: TRUE f_1441(v4465, v4466, 2) -> f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) :|: 1 <= v4483 && v4484 = 3 + v4483 && 4 <= v4484 f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 != 0 f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: TRUE f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4722 + v4466 = v4465 f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) :|: 0 = 0 f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) :|: TRUE f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) -> f_1441(v4722, v4466, 2) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1330(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_1330(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) -> f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) :|: 1 <= v4137 && v4138 = 3 + v4137 && 4 <= v4138 f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) -> f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) :|: 1 <= v4178 && v4179 = 3 + v4178 && 4 <= v4179 f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) -> f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 1 <= v4198 && v4199 = 3 + v4198 && 4 <= v4199 f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 0 = 0 f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) :|: 1 < v4038 f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) -> f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: TRUE f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: v4038 != 2 && 3 <= v4038 f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: TRUE f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 < v4039 f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) :|: 0 = 0 f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1435(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 1, 2, 4) :|: TRUE f_1435(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 1, 2, 4) -> f_1441(v4038, v4039, 2) :|: TRUE Combined rules. Obtained 5 rulesP rules: f_554 -> f_1446(v11:0, v16:0, v4483:0, v4484:0, 3, 2, 1, 4) :|: FALSE f_554 -> f_1446(1 + v16:0, v16:0, v4483:0, 3 + v4483:0, 3, 2, 1, 4) :|: v16:0 > 1 && v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v13:0 > 0 && v4137:0 > 0 && v4178:0 > 0 && v4198:0 > 0 && v4483:0 > 0 f_1446(v4465:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4713:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4465:0 < 0 && v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4483:1 > 0 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && v4483:1 > 0 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4722:0 + v4466:0 > 0 && v4519:0 > 0 && v4500:0 > 0 && v4483:1 > 0 Filtered unneeded arguments: f_1446(x1, x2, x3, x4, x5, x6, x7, x8) -> f_1446(x1, x2) Removed division, modulo operations, cleaned up constraints. Obtained 5 rules.P rules: f_554 -> f_1446(v11:0, v16:0) :|: FALSE f_554 -> f_1446(1 + v16:0, v16:0) :|: v16:0 > 1 f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4465:0 < 0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 ---------------------------------------- (81) Obligation: Rules: f_554 -> f_1446(v11:0, v16:0) :|: FALSE f_554 -> f_1446(1 + x, x) :|: x > 1 f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4465:0 < 0 f_1446(x1, x2) -> f_1446(x3, x2) :|: x3 + x2 > -1 && x3 + x2 < 0 && x1 = x3 + x2 f_1446(x4, x5) -> f_1446(x6, x5) :|: x6 + x5 > 0 && x4 = x6 + x5 Start term: f_554 ---------------------------------------- (82) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_554_2,1) (f_1446_2,2) ---------------------------------------- (83) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); oldX3 := nondet(); assume(0 = 1); x0 := oldX2; x1 := oldX3; TO: 2; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); assume(oldX2 > 1); x0 := 1 + oldX2; x1 := oldX2; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := -(oldX0 - 0); assume(oldX2 > 0 && oldX2 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); x1 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := oldX0 - oldX1; assume(oldX2 + oldX1 > -1 && oldX2 + oldX1 < 0 && oldX0 = oldX2 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := oldX0 - oldX1; assume(oldX2 + oldX1 > 0 && oldX0 = oldX2 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; TO: 2; ---------------------------------------- (84) T2 Underapproximation (COMPLETE) Added the following guard statements: ---------------------------------------- (85) Obligation: START: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); oldX3 := nondet(); assume(0 = 1); x0 := oldX2; x1 := oldX3; TO: 2; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); assume(oldX2 > 1); x0 := oldX2 + 1; x1 := oldX2; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := 0 - x0; assume(0 - x0 > 0 && 0 - x0 + x0 = 0 && x0 < 0); x0 := 0 - x0; x1 := x1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := x0 - x1; assume(x0 - x1 + x1 > -1 && x0 - x1 + x1 < 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; TO: 2; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := x0 - x1; assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; TO: 2; ---------------------------------------- (86) Obligation: Lasso ---------------------------------------- (87) Lasso2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 65 rulesP rules: f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) -> f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) :|: 1 <= v4178 && v4179 = 3 + v4178 && 4 <= v4179 f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) -> f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 1 <= v4198 && v4199 = 3 + v4198 && 4 <= v4199 f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 0 = 0 f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) :|: 1 < v4038 f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) -> f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: TRUE f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: v4038 != 2 && 3 <= v4038 f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: TRUE f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 < v4039 f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) :|: 0 = 0 f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1781(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1911(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1781(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1793(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1793(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1805(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1805(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1825(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1825(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1835(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1835(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1847(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 + v6053 = v4039 && 1 <= v6053 f_1847(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) :|: 0 = 0 f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_1873(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 1, 2, 4) :|: TRUE f_1873(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 1, 2, 4) -> f_1330(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) :|: TRUE f_1330(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) -> f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) :|: 1 <= v4137 && v4138 = 3 + v4137 && 4 <= v4138 f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1861(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1861(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1875(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1875(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1893(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1893(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1911(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1330(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE Combined rules. Obtained 2 rulesP rules: f_1335(v4038:0, 1 + v6053:0, v4137:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, 0, 3, 1, 4) -> f_1335(v4038:0, v6053:0, v4137:1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, 3 + v4137:1, 0, 3, 1, 4) :|: v4038:0 > 2 && v4198:0 > 0 && v4178:0 > 0 && v6053:0 > 0 && v4137:1 > 0 f_554 -> f_1335(1 + v16:0, v16:0, v4137:0, v1:0, 3 + v1:0, v3:0, 3 + v3:0, v5:0, 3 + v5:0, v7:0, 3 + v7:0, v9:0, 3 + v9:0, v13:0, 3 + v13:0, 3 + v4137:0, 0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4137:0 > 0 Filtered unneeded arguments: f_1335(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20) -> f_1335(x1, x2) Removed division, modulo operations, cleaned up constraints. Obtained 2 rules.P rules: f_1335(v4038:0, sum~cons_1~v6053:0) -> f_1335(v4038:0, v6053:0) :|: v4038:0 > 2 && v6053:0 > 0 && sum~cons_1~v6053:0 = 1 + v6053:0 f_554 -> f_1335(1 + v16:0, v16:0) :|: v16:0 > -1 ---------------------------------------- (88) Obligation: Rules: f_1335(v4038:0, sum~cons_1~v6053:0) -> f_1335(v4038:0, v6053:0) :|: v4038:0 > 2 && v6053:0 > 0 && sum~cons_1~v6053:0 = 1 + v6053:0 f_554 -> f_1335(1 + v16:0, v16:0) :|: v16:0 > -1 Start term: f_554 ---------------------------------------- (89) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1335_2,1) (f_554_2,2) ---------------------------------------- (90) Obligation: START: 2; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := oldX1 - 1; assume(oldX0 > 2 && oldX2 > 0 && oldX1 = 1 + oldX2); x0 := oldX0; x1 := oldX1 - 1; TO: 1; FROM: 2; oldX0 := x0; oldX1 := x1; oldX2 := nondet(); assume(oldX2 > -1); x0 := 1 + oldX2; x1 := oldX2; TO: 1; ---------------------------------------- (91) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 1, 3, 4 using the following rank functions: - Rank function 1: RF for loc. 5: 1+2*x1 RF for loc. 6: 2*x1 Bound for (chained) transitions 3: 4 Bound for (chained) transitions 4: 4 - Rank function 2: RF for loc. 5: 0 RF for loc. 6: -1 Bound for (chained) transitions 1: 0 ---------------------------------------- (92) YES ---------------------------------------- (93) SymbolicExecutionGraphToSCCProof (SOUND) Splitted symbolic execution graph to 3 SCCs. ---------------------------------------- (94) Complex Obligation (AND) ---------------------------------------- (95) Obligation: SCC ---------------------------------------- (96) SCC2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 33 rulesP rules: f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE Combined rules. Obtained 3 rulesP rules: f_1530(v4716:0, v4717:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4750:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4723:0 > 0 && v4720:0 > 0 && v4717:0 < 0 && v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4876:0 < -1 && v4718:1 > 0 f_1530(v4716:0, 1 + v4876:0, v4718:0, v4719:0, 3, 1, 4) -> f_1530(v4716:0, v4876:0, v4718:1, 3 + v4718:1, 3, 1, 4) :|: v4876:0 > 0 && v4723:0 > 0 && v4720:0 > 0 && v4718:1 > 0 Filtered unneeded arguments: f_1530(x1, x2, x3, x4, x5, x6, x7) -> f_1530(x2) Removed division, modulo operations, cleaned up constraints. Obtained 3 rules.P rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 ---------------------------------------- (97) Obligation: Rules: f_1530(v4717:0) -> f_1530(v4750:0) :|: v4750:0 > 0 && v4750:0 + v4717:0 = 0 && v4717:0 < 0 f_1530(sum~cons_1~v4876:0) -> f_1530(v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1530(x) -> f_1530(x1) :|: x1 > 0 && x = 1 + x1 ---------------------------------------- (98) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1530_1,1) ---------------------------------------- (99) Obligation: START: 0; FROM: 0; TO: 1; FROM: 1; oldX0 := x0; oldX1 := -(oldX0 - 0); assume(oldX1 > 0 && oldX1 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX1 < -1 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := oldX0 - 1; assume(oldX1 > 0 && oldX0 = 1 + oldX1); x0 := oldX0 - 1; TO: 1; ---------------------------------------- (100) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 5 using the following rank functions: - Rank function 1: RF for loc. 5: 0 RF for loc. 6: 0 Bound for (chained) transitions 5: 0 Used the following cutpoint-specific lexicographic rank functions: * For cutpoint 5, used the following rank functions/bounds (in descending priority order): - RF -x0, bound 1 ---------------------------------------- (101) YES ---------------------------------------- (102) Obligation: SCC ---------------------------------------- (103) SCC2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 35 rulesP rules: f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) -> f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) :|: 1 <= v4500 && v4501 = 3 + v4500 && 4 <= v4501 f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) -> f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 1 <= v4519 && v4520 = 3 + v4519 && 4 <= v4520 f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 < 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 <= v4465 f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: v4713 + v4465 = 0 && 1 <= v4713 f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) :|: 0 = 0 f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) :|: TRUE f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) -> f_1441(v4713, v4466, 2) :|: TRUE f_1441(v4465, v4466, 2) -> f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) :|: 1 <= v4483 && v4484 = 3 + v4483 && 4 <= v4484 f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 != 0 f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: TRUE f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4722 + v4466 = v4465 f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) :|: 0 = 0 f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) :|: TRUE f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) -> f_1441(v4722, v4466, 2) :|: TRUE Combined rules. Obtained 3 rulesP rules: f_1446(v4465:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4713:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4465:0 < 0 && v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4483:1 > 0 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && v4483:1 > 0 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4722:0 + v4466:0 > 0 && v4519:0 > 0 && v4500:0 > 0 && v4483:1 > 0 Filtered unneeded arguments: f_1446(x1, x2, x3, x4, x5, x6, x7, x8) -> f_1446(x1, x2) Removed division, modulo operations, cleaned up constraints. Obtained 3 rules.P rules: f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4465:0 < 0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 ---------------------------------------- (104) Obligation: Rules: f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4465:0 < 0 f_1446(x, x1) -> f_1446(x2, x1) :|: x2 + x1 > -1 && x2 + x1 < 0 && x = x2 + x1 f_1446(x3, x4) -> f_1446(x5, x4) :|: x5 + x4 > 0 && x3 = x5 + x4 ---------------------------------------- (105) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1446_2,1) ---------------------------------------- (106) Obligation: START: 0; FROM: 0; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := -(oldX0 - 0); assume(oldX2 > 0 && oldX2 + oldX0 = 0 && oldX0 < 0); x0 := -(oldX0 - 0); x1 := oldX1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := oldX0 - oldX1; assume(oldX2 + oldX1 > -1 && oldX2 + oldX1 < 0 && oldX0 = oldX2 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := oldX0 - oldX1; assume(oldX2 + oldX1 > 0 && oldX0 = oldX2 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; TO: 1; ---------------------------------------- (107) T2 (COMPLETE) Found this recurrent set for cutpoint 5: x0 == 1 and x1 == 0 ---------------------------------------- (108) NO ---------------------------------------- (109) SCC2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 35 rulesP rules: f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) -> f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) :|: 1 <= v4500 && v4501 = 3 + v4500 && 4 <= v4501 f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) -> f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 1 <= v4519 && v4520 = 3 + v4519 && 4 <= v4520 f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 < 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 <= v4465 f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: v4713 + v4465 = 0 && 1 <= v4713 f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) :|: 0 = 0 f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) :|: TRUE f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) -> f_1441(v4713, v4466, 2) :|: 2 <= v4466 f_1441(v4465, v4466, 2) -> f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) :|: 1 <= v4483 && v4484 = 3 + v4483 && 4 <= v4484 f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 != 0 f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: TRUE f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4722 + v4466 = v4465 f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) :|: 0 = 0 f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) :|: TRUE f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) -> f_1441(v4722, v4466, 2) :|: 2 <= v4466 Combined rules. Obtained 3 rulesP rules: f_1446(v4465:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4713:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4465:0 < 0 && v4713:0 > 0 && v4713:0 + v4465:0 = 0 && v4483:1 > 0 && v4466:0 > 1 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4519:0 > 0 && v4500:0 > 0 && v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && v4483:1 > 0 && v4466:0 > 1 f_1446(v4722:0 + v4466:0, v4466:0, v4483:0, v4484:0, 3, 2, 1, 4) -> f_1446(v4722:0, v4466:0, v4483:1, 3 + v4483:1, 3, 2, 1, 4) :|: v4722:0 + v4466:0 > 0 && v4519:0 > 0 && v4500:0 > 0 && v4483:1 > 0 && v4466:0 > 1 Filtered unneeded arguments: f_1446(x1, x2, x3, x4, x5, x6, x7, x8) -> f_1446(x1, x2) Removed division, modulo operations, cleaned up constraints. Obtained 3 rules.P rules: f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4465:0 < 0 && v4466:0 > 1 && v4713:0 + v4465:0 = 0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 < 0 && v4466:0 > 1 && v4722:0 + v4466:0 > -1 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1446(sum~v4722:0~v4466:0, v4466:0) -> f_1446(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > 0 && v4466:0 > 1 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 ---------------------------------------- (110) Obligation: Rules: f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4465:0 < 0 && v4466:0 > 1 && v4713:0 + v4465:0 = 0 f_1446(x, x1) -> f_1446(x2, x1) :|: x2 + x1 < 0 && x1 > 1 && x2 + x1 > -1 && x = x2 + x1 f_1446(x3, x4) -> f_1446(x5, x4) :|: x5 + x4 > 0 && x4 > 1 && x3 = x5 + x4 ---------------------------------------- (111) TerminationGraphProcessor (EQUIVALENT) Constructed the termination graph and obtained one non-trivial SCC. ---------------------------------------- (112) Obligation: Rules: f_1446(v4465:0, v4466:0) -> f_1446(v4713:0, v4466:0) :|: v4713:0 > 0 && v4465:0 < 0 && v4466:0 > 1 && v4713:0 + v4465:0 = 0 f_1446(x3, x4) -> f_1446(x5, x4) :|: x5 + x4 > 0 && x4 > 1 && x3 = x5 + x4 ---------------------------------------- (113) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (114) Obligation: Rules: f_1446(v4465:0:0, v4466:0:0) -> f_1446(v4713:0:0, v4466:0:0) :|: v4466:0:0 > 1 && v4713:0:0 + v4465:0:0 = 0 && v4465:0:0 < 0 && v4713:0:0 > 0 f_1446(sum~x5:0~x4:0, x4:0) -> f_1446(x5:0, x4:0) :|: x5:0 + x4:0 > 0 && x4:0 > 1 && sum~x5:0~x4:0 = x5:0 + x4:0 ---------------------------------------- (115) IntTRSPeriodicNontermProof (COMPLETE) Normalized system to the following form: f(pc, v4465:0:0, v4466:0:0) -> f(1, v4713:0:0, v4466:0:0) :|: pc = 1 && (v4466:0:0 > 1 && v4713:0:0 + v4465:0:0 = 0 && v4465:0:0 < 0 && v4713:0:0 > 0) f(pc, sum~x5:0~x4:0, x4:0) -> f(1, x5:0, x4:0) :|: pc = 1 && (x5:0 + x4:0 > 0 && x4:0 > 1 && sum~x5:0~x4:0 = x5:0 + x4:0) Witness term starting non-terminating reduction: f(1, -1, 6) ---------------------------------------- (116) NO ---------------------------------------- (117) Obligation: SCC ---------------------------------------- (118) SCC2IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 40 rulesP rules: f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) -> f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) :|: 1 <= v4178 && v4179 = 3 + v4178 && 4 <= v4179 f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) -> f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 1 <= v4198 && v4199 = 3 + v4198 && 4 <= v4199 f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 0 = 0 f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) :|: 1 < v4038 f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) -> f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: TRUE f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: v4038 != 2 && 3 <= v4038 f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: TRUE f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 < v4039 f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) :|: 0 = 0 f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1781(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1911(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1781(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1793(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1793(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1805(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1805(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1825(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1825(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1835(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1835(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1847(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 + v6053 = v4039 && 1 <= v6053 f_1847(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) :|: 0 = 0 f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_1873(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 1, 2, 4) :|: TRUE f_1873(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 1, 2, 4) -> f_1330(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) :|: TRUE f_1330(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) -> f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) :|: 1 <= v4137 && v4138 = 3 + v4137 && 4 <= v4138 f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1861(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1861(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1875(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1875(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1893(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1893(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1911(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE Combined rules. Obtained 1 rulesP rules: f_1335(v4038:0, 1 + v6053:0, v4137:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, 0, 3, 1, 4) -> f_1335(v4038:0, v6053:0, v4137:1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, 3 + v4137:1, 0, 3, 1, 4) :|: v4038:0 > 2 && v4198:0 > 0 && v4178:0 > 0 && v6053:0 > 0 && v4137:1 > 0 Filtered unneeded arguments: f_1335(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20) -> f_1335(x1, x2) Removed division, modulo operations, cleaned up constraints. Obtained 1 rules.P rules: f_1335(v4038:0, sum~cons_1~v6053:0) -> f_1335(v4038:0, v6053:0) :|: v4038:0 > 2 && v6053:0 > 0 && sum~cons_1~v6053:0 = 1 + v6053:0 ---------------------------------------- (119) Obligation: Rules: f_1335(v4038:0, sum~cons_1~v6053:0) -> f_1335(v4038:0, v6053:0) :|: v4038:0 > 2 && v6053:0 > 0 && sum~cons_1~v6053:0 = 1 + v6053:0 ---------------------------------------- (120) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1335_2,1) ---------------------------------------- (121) Obligation: START: 0; FROM: 0; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := oldX1 - 1; assume(oldX0 > 2 && oldX2 > 0 && oldX1 = 1 + oldX2); x0 := oldX0; x1 := oldX1 - 1; TO: 1; ---------------------------------------- (122) T2 (EQUIVALENT) Initially, performed program simplifications using lexicographic rank functions: * Removed transitions 1, 3, 4 using the following rank functions: - Rank function 1: RF for loc. 5: 1+2*x1 RF for loc. 6: 2*x1 Bound for (chained) transitions 3: 4 Bound for (chained) transitions 4: 4 - Rank function 2: RF for loc. 5: 0 RF for loc. 6: -1 Bound for (chained) transitions 1: 0 ---------------------------------------- (123) YES ---------------------------------------- (124) SEGraph to IRS (SOUND) Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: Generated rules. Obtained 615 rulesP rules: f_554 -> f_555(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 f_555(v1, v2, 3, 1, 4) -> f_556(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 f_556(v1, v3, v2, v4, 3, 1, 4) -> f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 f_557(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 f_558(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 f_559(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_560(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_561(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE f_562(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_564(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: v11 < 1 f_563(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 1 <= v11 f_564(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_566(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: 0 = 0 f_565(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_566(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_568(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: TRUE f_567(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_568(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_570(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: TRUE f_569(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_570(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_572(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: TRUE f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_573(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_571(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_572(v1, v3, v5, v7, v9, v11, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_575(v1, v3, v5, v7, v9, v11, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_573(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_576(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_574(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE f_576(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_578(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_577(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 f_578(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_580(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_579(v1, v3, v5, v7, v9, v11, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) :|: 0 = 0 f_580(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_582(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_581(v11, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, 3, 1, 4) -> f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 <= v13 && v14 = 3 + v13 && 4 <= v14 f_583(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: TRUE f_584(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_585(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 0 = 0 f_586(v11, v13, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) :|: 1 + v16 = v11 && 0 <= v16 f_587(v11, v13, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 1, 4) -> f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: 0 = 0 f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1386(1, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 3, 4) :|: TRUE f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1434(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_588(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_589(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) -> f_1330(v11, v16, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 1, 4) :|: TRUE f_773(v315, v316, v317, v318, v319, v320, v321, v322, v323, v324, v325, v326, 0, 2, 1, v330, 3, 4) -> f_1527(v315, v316, 1) :|: TRUE f_809(v341, v342, v343, v344, v345, v346, v347, v348, v349, v350, v351, v352, v353, v354, v355, v356, v357, v358, v359, v360, 0, v362, 3, 1, 2, 4) -> f_1441(v341, v342, 2) :|: TRUE f_1330(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) -> f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) :|: 1 <= v4137 && v4138 = 3 + v4137 && 4 <= v4138 f_1335(v4038, v4039, v4137, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, 0, 3, 1, 4) -> f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) :|: 1 <= v4178 && v4179 = 3 + v4178 && 4 <= v4179 f_1339(v4038, v4039, v4137, v4178, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, 0, 3, 1, 4) -> f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 1 <= v4198 && v4199 = 3 + v4198 && 4 <= v4199 f_1342(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1345(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: TRUE f_1348(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) :|: 0 = 0 f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1354(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: v4038 <= 1 && v4039 = 0 && v4038 = 1 && 0 = 0 f_1351(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 4) -> f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) :|: 1 < v4038 f_1354(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1358(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1355(v4038, v4039, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 0, 3, 1, 2, 4) -> f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1358(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1363(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1359(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: TRUE f_1363(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1368(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1364(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) :|: 0 = 0 f_1368(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1373(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1374(2, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: v4038 = 2 f_1369(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 2, 4) -> f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: v4038 != 2 && 3 <= v4038 f_1373(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1379(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1374(2, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1380(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1375(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1380(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1387(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1381(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: TRUE f_1386(1, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 3, 4) -> f_1389(1, v13, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 3, 4) :|: 0 = 0 f_1387(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1390(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1388(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) :|: 0 = 0 f_1389(1, v13, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 3, 4) -> f_1392(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1390(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1393(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1391(v4038, v4039, v4137, v4178, v4198, 0, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 1, 4) -> f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1392(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1395(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1393(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1396(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1394(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1395(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1398(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1397(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1398(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1401(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1399(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1403(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: v4039 <= 1 f_1400(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 < v4039 f_1401(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1405(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1402(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1403(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1407(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1404(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1405(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1409(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: v4408 < 1 f_1405(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1410(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v4408 f_1406(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1407(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1412(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1408(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1409(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1414(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1410(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1415(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1411(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1412(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1417(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1413(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1414(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1419(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1415(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1420(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1416(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1417(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1422(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1418(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1419(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1424(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1420(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1425(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1421(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1422(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1427(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1423(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) :|: 0 = 0 f_1424(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1429(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1425(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1430(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1425(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1431(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1432(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: v4429 < 1 f_1426(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 <= v4429 f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1435(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 1, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1537(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1596(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1640(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1700(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1768(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1781(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1836(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1908(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1428(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 1, 3, 2, 4) -> f_1911(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1429(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1436(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1430(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1437(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1431(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1438(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1432(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1439(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1433(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1435(v4038, v4039, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 1, 2, 4) -> f_1441(v4038, v4039, 2) :|: TRUE f_1437(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1442(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1438(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1443(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1439(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1444(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1440(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1441(v4465, v4466, 2) -> f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) :|: 1 <= v4483 && v4484 = 3 + v4483 && 4 <= v4484 f_1442(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1447(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1443(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1448(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1444(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1449(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1445(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1446(v4465, v4466, v4483, v4484, 3, 2, 1, 4) -> f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) :|: 1 <= v4500 && v4501 = 3 + v4500 && 4 <= v4501 f_1447(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) -> f_1452(v1, v3, v5, v7, v9, 1, 0, v4408, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1448(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1453(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1449(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1454(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1455(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1450(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1451(v4465, v4466, v4483, v4500, v4484, v4501, 3, 2, 1, 4) -> f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 1 <= v4519 && v4520 = 3 + v4519 && 4 <= v4520 f_1453(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1458(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1454(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1459(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1455(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1460(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1456(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1457(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1458(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1463(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1460(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1464(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1461(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1462(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1463(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1467(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1464(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1468(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1465(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1466(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1467(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1471(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1467(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1472(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1468(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1473(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1469(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1470(v4465, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1471(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1476(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1472(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1477(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1474(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1475(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1476(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1480(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1477(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1481(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1478(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1479(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1480(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1484(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1481(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1485(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1482(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 < 0 f_1483(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 <= v4465 f_1484(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1489(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1485(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1490(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1491(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1486(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1487(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1488(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1490(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1495(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1491(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1496(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1492(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1493(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1494(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1495(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1500(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1496(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1501(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1497(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1498(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1499(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1500(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) -> f_1505(v1, v3, v5, v7, v9, 1, 0, v4408, v4467, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1501(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1506(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1502(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1503(v4465, v4466, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: v4713 + v4465 = 0 && 1 <= v4713 f_1504(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1506(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1510(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1507(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1508(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1509(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: TRUE f_1511(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1512(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) :|: 0 = 0 f_1513(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) :|: 0 = 0 f_1514(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1538(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1597(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1641(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1701(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1769(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1782(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1837(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1850(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1909(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1515(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 1, 3, 2, 4) -> f_1912(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1519(0, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) :|: v4465 = 0 f_1516(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4465 != 0 f_1517(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: 0 = 0 f_1518(v4713, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 0, 1, 2, 4) -> f_1441(v4713, v4466, 2) :|: TRUE f_1519(0, v4466, v4483, v4500, v4519, v4484, v4501, v4520, 3, 2, 1, 4) -> f_1522(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1520(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1591(v4429, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1622(v4429, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1888(v4429, v4545, v6346, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1902(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1947(v4429, v4545, v6740, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1960(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1985(v4429, v4545, v6740, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1521(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1996(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1522(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1525(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1523(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: TRUE f_1524(v4429, v4545, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1527(v4429, v4545, 1) :|: TRUE f_1525(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1528(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1526(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1527(v4716, v4717, 1) -> f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) :|: 1 <= v4718 && v4719 = 3 + v4718 && 4 <= v4719 f_1528(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1531(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1529(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1530(v4716, v4717, v4718, v4719, 3, 1, 4) -> f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) :|: 1 <= v4720 && v4721 = 3 + v4720 && 4 <= v4721 f_1531(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1534(0, v4466, v4483, v4500, v4519, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1532(v4465, v4466, v4483, v4500, v4519, 0, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: v4722 + v4466 = v4465 f_1533(v4716, v4717, v4718, v4720, v4719, v4721, 3, 1, 4) -> f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 1 <= v4723 && v4724 = 3 + v4723 && 4 <= v4724 f_1535(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) :|: 0 = 0 f_1536(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1539(v4465, v4466, v4483, v4500, v4519, 0, v4722, v4484, v4501, v4520, 3, 1, 2, 4) -> f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) :|: 0 = 0 f_1540(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1547(0, v4465, 1, v4483, v4484, v4500, v4501, v4519, v4520, 3, 2, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1783(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1838(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1851(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1910(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1541(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 1, 2, 4) -> f_1913(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1542(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1543(v4722, v4466, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 3, 1, 2, 4) -> f_1441(v4722, v4466, 2) :|: TRUE f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: v4717 < 0 f_1544(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) :|: 0 <= v4717 f_1545(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1546(v4716, v4717, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 0, 4) -> f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1547(0, v4465, 1, v4483, v4484, v4500, v4501, v4519, v4520, 3, 2, 4) -> f_1550(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1548(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1549(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1550(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1553(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1551(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1552(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1553(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1556(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1554(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1558(v4716, 0, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) :|: v4717 = 0 f_1555(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: v4717 != 0 f_1556(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1560(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1557(v4716, v4717, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 0, 4) -> f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) :|: v4750 + v4717 = 0 && 1 <= v4750 f_1558(v4716, 0, v4718, v4720, v4723, v4719, v4721, v4724, 3, 1, 4) -> f_1562(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1559(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1560(v4465, v4483, v4500, v4519, 0, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1599(v4465, v4465, v4483, v4500, v4519, 0, 0, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1561(v4716, v4717, v4718, v4720, v4723, 1, v4750, v4719, v4721, v4724, 3, 0, 4) -> f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: 0 = 0 f_1562(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1568(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1563(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1592(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1623(v4716, 1, v4718, v4719, v4720, v4721, v4723, v4724, -1, 3, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1889(v4716, v4750, v6356, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1903(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1948(v4716, v4750, v6750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1961(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1986(v4716, v4750, v6750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: TRUE f_1567(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1997(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) :|: TRUE f_1568(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1574(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1569(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) :|: 0 = 0 f_1573(v4716, v4750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 0, 1, 4) -> f_1527(v4716, v4750, 1) :|: TRUE f_1574(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1579(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1580(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) :|: v4717 = 1 f_1575(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 4) -> f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: v4717 != 1 && 2 <= v4717 f_1579(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1585(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1580(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) -> f_1586(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1581(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1586(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) -> f_1593(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) :|: TRUE f_1587(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1591(v4429, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, 1, 3, 4, 2) -> f_1600(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1593(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) -> f_1601(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) :|: TRUE f_1594(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1599(v4817, v4818, v4819, v4820, v4821, 0, v4823, 1, v4825, v4826, v4827, 3, 2, 4) -> f_1767(v4817, v4818, v4819, v4820, v4821, 0, v4823, 1, v4825, v4826, v4827, 3, 2, 4) :|: TRUE f_1600(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1608(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1601(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) -> f_1609(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) :|: TRUE f_1602(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1608(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1615(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1609(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) -> f_1616(v4716, 1, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1610(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1615(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1621(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1617(v4716, v4717, v4718, v4720, v4723, 0, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) :|: 1 + v4876 = v4717 && 1 <= v4876 f_1621(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1628(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1622(v4429, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 3, 4, 2) -> f_1629(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1623(v4716, 1, v4718, v4719, v4720, v4721, v4723, v4724, -1, 3, 4) -> f_1630(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1624(v4716, v4717, v4718, v4720, v4723, 0, v4876, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: 0 = 0 f_1628(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1635(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1629(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1636(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1630(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1637(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1655(v4716, 0, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1656(v4716, 1, v4718, v4719, v4720, v4721, v4723, v4724, 2, 0, 3, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1890(v4716, v4876, v6366, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1904(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1949(v4716, v4876, v6760, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1962(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1987(v4716, v4876, v6760, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1631(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1998(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1635(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1643(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1636(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1644(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) :|: 1 = v11 f_1636(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1645(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) :|: 1 != v11 && v11 = 2 f_1637(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1646(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: TRUE f_1638(v4716, v4876, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 3, 1, 2, 4) -> f_1527(v4716, v4876, 1) :|: TRUE f_1644(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1652(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1645(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1653(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1646(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1654(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1652(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1662(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1653(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1663(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1654(v4716, -1, v4718, v4720, v4723, 1, v4719, v4721, v4724, 3, 4) -> f_1719(v4716, -1, v4718, v4720, v4723, 1, 1, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1656(v4716, 1, v4718, v4719, v4720, v4721, v4723, v4724, 2, 0, 3, 4) -> f_1667(v4716, 2, v4718, v4720, v4723, 0, 1, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1662(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1672(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1663(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1673(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1667(v4716, 2, v4718, v4720, v4723, 0, 1, v4719, v4721, v4724, 3, 4) -> f_1677(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) :|: v5052 = 1 + v4716 && 2 <= v5052 f_1672(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1681(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 < v4429 f_1672(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1682(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: v4429 <= 1 f_1673(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1683(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1677(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) -> f_1687(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) :|: TRUE f_1681(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1691(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1682(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1692(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1683(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) -> f_1693(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1687(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) -> f_1698(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) :|: TRUE f_1691(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1703(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1692(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1704(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1698(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) -> f_1709(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) :|: 0 = 0 f_1703(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1715(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1704(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1716(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1709(v4716, 2, v4718, v4720, v4723, 0, 1, v5052, v4719, v4721, v4724, 3, 4) -> f_1804(v4716, 2, v4718, v4720, v4723, 0, 1, 1, v5052, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1715(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1729(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1716(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1730(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1719(v5256, v5257, v5258, v5259, v5260, 1, v5262, v5263, v5264, v5265, 3, 0, 4) -> f_1791(v5256, v5257, v5258, v5259, v5260, 1, v5262, 1, v5263, v5264, v5265, 3, 0, 4) :|: TRUE f_1729(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1744(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1730(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_1745(v1, v3, v5, v7, v9, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1744(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1756(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1756(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1771(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1771(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1784(v1, v3, v5, v7, v9, 1, 0, v4429, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1781(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1793(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1782(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1794(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1783(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1795(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1791(v5751, v5752, v5753, v5754, v5755, 1, v5757, v5758, v5759, v5760, v5761, 3, 0, 4) -> f_1871(v5751, v5752, v5753, v5754, v5755, 1, v5757, v5758, v5759, v5760, v5761, 3, 0, 4) :|: TRUE f_1793(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1805(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1794(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1806(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1795(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1807(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1804(v5859, v5860, v5861, v5862, v5863, 0, v5865, v5866, v5867, v5868, v5869, v5870, 3, 1, 2, 4) -> f_1891(v5859, v5860, v5861, v5862, v5863, 0, v5865, v5866, v5867, v5868, v5869, v5870, 3, 1, 2, 4) :|: TRUE f_1805(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1806(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1817(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1807(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1818(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1825(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1817(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1826(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1818(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1827(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1825(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1835(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1827(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1767(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1835(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1847(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 1 + v6053 = v4039 && 1 <= v6053 f_1838(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1848(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1847(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) :|: 0 = 0 f_1848(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1860(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1861(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1850(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1862(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1851(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1863(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_1873(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 1, 2, 4) :|: TRUE f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_1905(1, 0, v4137, v4178, v4198, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_1906(2, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_1907(v4038, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 2, 3, 4) :|: TRUE f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_2026(v4038, v6053, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 2, 4) :|: TRUE f_1859(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 1, 3, 2, 4) -> f_2038(v4038, v6053, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 2, 4) :|: TRUE f_1860(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1874(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1861(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1875(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_1862(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1876(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1863(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1877(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1873(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 1, 2, 4) -> f_1330(v4038, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 0, 3, 1, 4) :|: TRUE f_1874(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1892(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: 0 = 0 f_1875(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1893(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1876(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1894(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1877(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1895(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1888(v4429, v4545, v6346, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1899(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1889(v4716, v4750, v6356, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1900(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1890(v4716, v4876, v6366, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1901(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1892(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1767(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1893(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_1816(v4038, v4039, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_1894(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) -> f_1817(v4465, v4466, v4483, v4500, v4519, 0, 1, v4713, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1895(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) -> f_1818(v4465, v4466, v4483, v4500, v4519, 0, v4722, 1, v4484, v4501, v4520, 3, 2, 4) :|: TRUE f_1899(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1914(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1900(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) -> f_1915(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1901(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1916(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) :|: v6641 = v4716 + v6366 && 2 <= v6641 f_1902(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1917(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1903(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) -> f_1918(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4, 2) :|: 0 = 0 f_1904(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1919(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1907(v4038, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 2, 3, 4) -> f_1920(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1910(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1838(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1911(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) -> f_1849(v4038, v4039, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, 3, 2, 4) :|: TRUE f_1912(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1850(v4713, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1913(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) -> f_1851(v4722, v4466, 1, v4483, v4484, v4500, v4501, v4519, v4520, v4465, 0, 3, 2, 4) :|: TRUE f_1914(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1921(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: v6346 = v11 f_1914(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1922(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: v6346 != v11 f_1915(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) -> f_1923(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1916(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1924(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1917(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1925(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1918(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4, 2) -> f_1926(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4, 2) :|: TRUE f_1919(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1927(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) :|: v6648 = v4716 + v6550 && 3 <= v6648 f_1920(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1928(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1921(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1929(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1922(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1930(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1923(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) -> f_1931(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1924(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1932(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1925(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1933(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4) :|: v6528 = v11 f_1925(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1934(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) :|: v6528 != v11 f_1926(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4, 2) -> f_1935(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4, 2) :|: TRUE f_1927(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1936(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1928(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1937(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: TRUE f_1929(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1938(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1930(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1939(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1931(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) -> f_1871(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6356, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1932(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1940(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1933(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4) -> f_1941(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_1934(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1942(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1935(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4, 2) -> f_1923(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6539, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1936(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1943(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1937(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_1944(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) :|: 0 = 0 f_1938(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1945(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1939(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1946(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1940(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1891(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6366, v6641, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1941(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4) -> f_1950(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_1942(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1951(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1943(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1932(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6550, v6648, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1944(v4038, 2, v4137, v4178, v4198, 0, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 4) -> f_2000(v4038, 2, v4137, v4178, v4198, 0, 1, 1, v4138, v4179, v4199, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, 3, 2, 4) :|: TRUE f_1945(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1954(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 < v4429 f_1945(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1955(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: v4429 <= 1 f_1946(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1956(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1947(v4429, v4545, v6740, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1957(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1948(v4716, v4750, v6750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1958(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) :|: 0 = 0 f_1949(v4716, v4876, v6760, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1959(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v4719, v4721, v4724, 3, 1, 2, 4) :|: 0 = 0 f_1950(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4) -> f_1938(v1, v3, v5, v7, v9, 2, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1951(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1939(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6528, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1954(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1965(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1955(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1966(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1956(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1967(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6346, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1957(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1968(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1958(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) -> f_1969(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1959(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1970(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) :|: v6958 = v4716 + v6760 && 2 <= v6958 f_1960(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1902(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1961(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) -> f_1903(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) :|: TRUE f_1962(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1904(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1965(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1973(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1966(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1974(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1968(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1975(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: v6740 = v11 f_1968(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1976(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) :|: v6740 != v11 f_1969(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) -> f_1977(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1970(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1978(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1973(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1981(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1974(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1982(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1975(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1983(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1976(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1984(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1977(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) -> f_1923(v4716, v4717, v4718, v4720, v4723, 1, v4750, v6750, v4719, v4721, v4724, 3, 0, 4) :|: TRUE f_1978(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1988(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1981(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1991(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 < v4545 f_1981(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1992(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: v4545 <= 1 f_1982(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1993(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1983(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1994(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1984(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1995(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1985(v4429, v4545, v6740, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1947(v4429, v4545, v6740, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1986(v4716, v4750, v6750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) -> f_1948(v4716, v4750, v6750, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4) :|: TRUE f_1987(v4716, v4876, v6760, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1949(v4716, v4876, v6760, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_1988(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) -> f_1932(v4716, v4717, v4718, v4720, v4723, 0, v4876, v6760, v6958, v4719, v4721, v4724, 3, 1, 2, 4) :|: TRUE f_1991(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2001(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1992(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2002(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1993(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2003(v1, v3, v5, v7, v9, v11, 0, 1, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_1994(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1938(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1995(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) -> f_1939(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v6740, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_1996(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_1960(v4429, v4545, v6528, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_1997(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) -> f_1961(v4716, v4750, v6539, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 1, 3, 0, 4, 2) :|: TRUE f_1998(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) -> f_1962(v4716, v4876, v6550, v4718, v4719, v4720, v4721, v4723, v4724, v4717, 0, 3, 1, 2, 4) :|: TRUE f_2000(v7204, v7205, v7206, v7207, v7208, 0, 1, v7211, v7212, v7213, v7214, v7215, v7216, v7217, v7218, v7219, v7220, v7221, v7222, v7223, v7224, v7225, v7226, 3, 2, 4) -> f_2023(v7204, v7205, v7206, v7207, v7208, 0, 1, v7211, v7212, v7213, v7214, 3, 2, 4) :|: TRUE f_2001(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2007(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2002(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2008(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2007(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2011(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2008(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2012(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2011(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2015 :|: TRUE f_2012(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2016(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2016(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2019(v1, v3, v5, v7, v9, v11, 0, 1, v4429, v4545, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) :|: 0 = 0 f_2026(v4038, v6053, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 2, 4) -> f_2028(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_2027(v11, v13, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v14, 0, 3, 4, 2) -> f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2028(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_2030(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_2029(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2030(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_2032(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_2031(v1, v3, v5, v7, v9, v11, 0, 1, v2, v4, v6, v8, v10, 3, 4) -> f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2032(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_2034(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) :|: 0 = 0 f_2033(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2034(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4138, v4179, v4199, 3, 2, 4) -> f_2023(v4038, v4039, v4137, v4178, v4198, 0, 1, v6053, v4138, v4179, v4199, 3, 2, 4) :|: TRUE f_2035(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2039(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: v7449 < 1 f_2036(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 1 <= v7449 f_2037(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) -> f_2025(v11, v16, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v13, v14, 0, 3, 4, 2) :|: TRUE f_2038(v4038, v6053, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 2, 4) -> f_2026(v4038, v6053, 1, v4040, v4041, v4042, v4043, v4044, v4045, v4046, v4047, v4048, v4049, v4050, v4051, v4137, v4138, v4178, v4179, v4198, v4199, 0, v4039, 3, 2, 4) :|: TRUE f_2039(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2041(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2040(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2041(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2043(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2042(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2043(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2045(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2044(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2045(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2047(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2048(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2046(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2047(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2050(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2048(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2051(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2049(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2051(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2053(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2052(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2053(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2055(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2054(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2055(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2057(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2056(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2058(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2059(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2060(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2062(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2061(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2062(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2064(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2063(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2064(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2066(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2065(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2066(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2068(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2067(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2068(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2070(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2069(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2071(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2072(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2073(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: 0 = 0 f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2076(v7449, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, 1, 3, 4) :|: TRUE f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2077(v7449, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 3, 4) :|: TRUE f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2078(v7449, v7607, v7845, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) :|: TRUE f_2074(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2079(v7449, v7607, v7856, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) :|: TRUE f_2075(v7449, v7607, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_1527(v7449, v7607, 1) :|: TRUE f_2076(v7449, 0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, 1, 3, 4) -> f_2080(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2077(v7449, 1, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 3, 4) -> f_2081(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2078(v7449, v7607, v7845, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4) -> f_2082(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2079(v7449, v7607, v7856, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, 0, v11, 1, 3, 4, 2) -> f_2083(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2080(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2084(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2081(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2085(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2082(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2086(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2083(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2087(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2084(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2088(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2085(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2089(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2086(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2090(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: v7845 = v11 f_2086(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2091(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: v7845 != v11 f_2087(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2092(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: v7856 = v11 f_2087(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2093(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) :|: v7856 != v11 f_2088(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2094(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2089(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2095(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2090(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2096(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2091(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2097(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2092(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2098(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2093(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2099(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2094(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2100(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2095(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2101(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2096(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2102(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2097(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2103(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2098(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2104(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2099(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2105(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2100(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2106(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2101(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2107(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2102(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2108(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2103(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2109(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2104(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2102(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2105(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2103(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7856, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2106(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2110(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2107(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) -> f_2111(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2108(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2112(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 < v7449 f_2108(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2113(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) :|: v7449 <= 1 f_2109(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2114(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2112(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2115(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2113(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2116(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2114(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) -> f_2117(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v7845, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2115(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2118(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2116(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2119(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2118(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2120(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2119(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2121(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2120(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2122(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 < v7607 f_2120(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2123(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: v7607 <= 1 f_2121(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2124(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) :|: TRUE f_2122(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2125(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2123(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2126(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 f_2124(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) -> f_2127(v1, v3, v5, v7, v9, v11, 0, 1, v7607, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 f_2125(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2128(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2126(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2129(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2128(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2130(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2129(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2131(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2130(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2132 :|: TRUE f_2131(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2133(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE f_2133(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) -> f_2134(v1, v3, v5, v7, v9, v11, 0, 1, v7449, v7607, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 Combined rules. Obtained 95 rulesP rules: f_1483(0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1534(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: TRUE f_1351(v4038:0, 1 + v6053:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1859(v4038:0, v6053:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4137:0, v4138:0, v4178:0, v4179:0, v4198:0, v4199:0, 0, 1 + v6053:0, 1, 3, 2, 4) :|: v4038:0 > 2 && v6053:0 > 0 f_554 -> f_1351(1 + v16:0, v16:0, v4137:0, v4178:0, v4198:0, v1:0, 3 + v1:0, v3:0, 3 + v3:0, v5:0, 3 + v5:0, v7:0, 3 + v7:0, v9:0, 3 + v9:0, v13:0, 3 + v13:0, 3 + v4137:0, 3 + v4178:0, 3 + v4198:0, 0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4137:0 > 0 && v4178:0 > 0 && v4198:0 > 0 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1483(v4713:0, v4466:0, v4483:1, v4500:1, v4519:1, 0, 3 + v4483:1, 3 + v4500:1, 3 + v4519:1, 3, 2, 1, 4) :|: v4483:1 > 0 && v4500:1 > 0 && v4519:1 > 0 && v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_554 -> f_1643(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2117(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v7845:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7845:0 < v11:0 && v7449:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2117(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v7845:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7845:0 > v11:0 && v7449:0 > 0 f_554 -> f_1505(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, v4467:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4408:0 > 0 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1891(v4716:0, 2, v4718:0, v4720:0, v4723:0, 0, 1, 1, 1 + v4716:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4876:0 < -1 && v4716:0 > 0 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1891(v4716:0, 2, v4718:0, v4720:0, v4723:0, 0, 1, 1, 1 + v4716:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4716:0 > 0 f_2108(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2134(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v7607:0 < 2 && v7449:0 > 1 f_554 -> f_1925(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, v6528:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6760:0, v4716:0 + v6760:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4876:0 < -1 && v4716:0 + v6760:0 > 1 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6760:0, v4716:0 + v6760:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4716:0 + v6760:0 > 1 f_1945(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_2019(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v4545:0 < 2 && v4429:0 > 1 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1597(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_1859(v4038:0, v6053:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4137:0, v4138:0, v4178:0, v4179:0, v4198:0, v4199:0, 0, v4039:0, 1, 3, 2, 4) -> f_1351(v4038:0, v6053:0, v4137:1, v4178:1, v4198:1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, 3 + v4137:1, 3 + v4178:1, 3 + v4198:1, 0, 3, 1, 4) :|: v4137:1 > 0 && v4178:1 > 0 && v4198:1 > 0 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1655(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: v4876:0 > 0 && v4876:0 < -1 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1655(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: v4876:0 > 0 f_1945(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_2003(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v4429:0 < 2 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1768(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1826(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_1925(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6528:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6528:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6528:0 < v11:0 f_1925(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6528:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6528:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6528:0 > v11:0 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1769(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_554 -> f_1473(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 f_554 -> f_1968(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, v6740:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 f_1544(v4716:0, v4717:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1871(v4716:0, v4717:0, v4718:0, v4720:0, v4723:0, 1, v4750:0, v6539:0, v4719:0, v4721:0, v4724:0, 3, 0, 4) :|: v4717:0 < 0 && v4750:0 + v4717:0 = 0 && v4750:0 > 0 f_1483(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1483(v4722:0, v4466:0, v4483:1, v4500:1, v4519:1, 0, 3 + v4483:1, 3 + v4500:1, 3 + v4519:1, 3, 2, 1, 4) :|: v4722:0 + v4466:0 > -1 && v4483:1 > 0 && v4500:1 > 0 && v4519:1 > 0 && v4722:0 + v4466:0 < 0 f_1483(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1483(v4722:0, v4466:0, v4483:1, v4500:1, v4519:1, 0, 3 + v4483:1, 3 + v4500:1, 3 + v4519:1, 3, 2, 1, 4) :|: v4722:0 + v4466:0 > 0 && v4483:1 > 0 && v4500:1 > 0 && v4519:1 > 0 f_554 -> f_1544(v4429:0, v4545:0, v4718:0, v4720:0, v4723:0, 3 + v4718:0, 3 + v4720:0, 3 + v4723:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 && v4718:0 > 0 && v4720:0 > 0 && v4723:0 > 0 f_554 -> f_1436(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4408:0 < 1 f_2108(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2132 :|: v7607:0 > 1 && v7449:0 > 1 f_554 -> f_1745(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v13:0 > 0 && v4429:0 < 2 && v4429:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2070(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_773(v315:0, v316:0, v317:0, v318:0, v319:0, v320:0, v321:0, v322:0, v323:0, v324:0, v325:0, v326:0, 0, 2, 1, v330:0, 3, 4) -> f_1544(v315:0, v316:0, v4718:0, v4720:0, v4723:0, 3 + v4718:0, 3 + v4720:0, 3 + v4723:0, 3, 1, 4) :|: v4718:0 > 0 && v4720:0 > 0 && v4723:0 > 0 f_1351(2, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1396(2, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1538(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2108(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_1483(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1767(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4722:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 < 0 && v4722:0 + v4466:0 > -1 f_1483(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1767(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4722:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 > 0 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1537(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1945(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_2015 :|: v4545:0 > 1 && v4429:0 > 1 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1909(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1427(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: v4038:0 > 2 && v4039:0 < 2 f_554 -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, v6346:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v6346:0 < 1 + v16:0 && v4429:0 > 0 f_554 -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, v6346:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v6346:0 > 1 + v16:0 && v4429:0 > 0 f_554 -> f_582(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v11:0 > 0 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1544(v4716:0, v4876:0, v4718:1, v4720:1, v4723:1, 3 + v4718:1, 3 + v4720:1, 3 + v4723:1, 3, 1, 4) :|: v4876:0 > 0 && v4876:0 < -1 && v4718:1 > 0 && v4720:1 > 0 && v4723:1 > 0 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1544(v4716:0, v4876:0, v4718:1, v4720:1, v4723:1, 3 + v4718:1, 3 + v4720:1, 3 + v4723:1, 3, 1, 4) :|: v4876:0 > 0 && v4718:1 > 0 && v4720:1 > 0 && v4723:1 > 0 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1640(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1544(v4716:0, v4717:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1871(v4716:0, -1, v4718:0, v4720:0, v4723:0, 1, 1, 1, v4719:0, v4721:0, v4724:0, 3, 0, 4) :|: v4717:0 < 0 && v4750:0 + v4717:0 = 0 && v4750:0 > 0 f_1859(v4038:0, v6053:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4137:0, v4138:0, v4178:0, v4179:0, v4198:0, v4199:0, 0, v4039:0, 1, 3, 2, 4) -> f_2023(v4038:0, 2, v4137:0, v4178:0, v4198:0, 0, 1, 1, v4138:0, v4179:0, v4199:0, 3, 2, 4) :|: TRUE f_554 -> f_1459(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 < 1 f_554 -> f_1489(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, v4467:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4408:0 > 0 f_554 -> f_1510(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 f_1859(v4038:0, v6053:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4137:0, v4138:0, v4178:0, v4179:0, v4198:0, v4199:0, 0, v4039:0, 1, 3, 2, 4) -> f_2023(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v6053:0, v4138:0, v4179:0, v4199:0, 3, 2, 4) :|: TRUE f_809(v341:0, v342:0, v343:0, v344:0, v345:0, v346:0, v347:0, v348:0, v349:0, v350:0, v351:0, v352:0, v353:0, v354:0, v355:0, v356:0, v357:0, v358:0, v359:0, v360:0, 0, v362:0, 3, 1, 2, 4) -> f_1483(v341:0, v342:0, v4483:0, v4500:0, v4519:0, 0, 3 + v4483:0, 3 + v4500:0, 3 + v4519:0, 3, 2, 1, 4) :|: v4483:0 > 0 && v4500:0 > 0 && v4519:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2050(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 < 1 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1837(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_554 -> f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v7449:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 f_1968(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6740:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6740:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6740:0 < v11:0 f_1968(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6740:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6740:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6740:0 > v11:0 f_1351(1, 0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1379(1, 0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1700(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1544(v4716:0, v4717:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1592(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: v4717:0 < 0 && v4750:0 + v4717:0 = 0 && v4750:0 > 0 f_1859(v4038:0, v6053:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4137:0, v4138:0, v4178:0, v4179:0, v4198:0, v4199:0, 0, v4039:0, 1, 3, 2, 4) -> f_1905(1, 0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1596(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1968(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v11:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_1945(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: TRUE f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2057(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2111(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_1544(v7449:0, v7607:0, v4718:0, v4720:0, v4723:0, 3 + v4718:0, 3 + v4720:0, 3 + v4723:0, 3, 1, 4) :|: v7449:0 > 0 && v4718:0 > 0 && v4720:0 > 0 && v4723:0 > 0 f_1483(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1767(v4722:0 + v4466:0, v4722:0 + v4466:0, v4483:0, v4500:0, v4519:0, 0, 0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 < 0 && v4722:0 + v4466:0 > -1 f_1483(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1767(v4722:0 + v4466:0, v4722:0 + v4466:0, v4483:0, v4500:0, v4519:0, 0, 0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 > 0 f_1544(v4716:0, 1, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1616(v4716:0, 1, v4718:0, v4720:0, v4723:0, 0, v4719:0, v4721:0, v4724:0, 3, 4) :|: TRUE f_2108(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2127(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 < 2 f_2036(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) -> f_2110(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_554 -> f_1945(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4429:0 > 0 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1836(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6550:0, v4716:0 + v6550:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4876:0 < -1 && v4716:0 + v6550:0 > 2 f_1544(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6550:0, v4716:0 + v6550:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4716:0 + v6550:0 > 2 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1641(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_1483(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4484:0, v4501:0, v4520:0, 3, 2, 1, 4) -> f_1701(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 && v4713:0 + v4465:0 = 0 && v4713:0 > 0 f_554 -> f_1434(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE f_554 -> f_1784(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v4429:0 > 1 && v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v13:0 > 0 f_554 -> f_1452(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v13:0 > 0 && v4408:0 > 0 f_1925(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v11:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) -> f_1945(v1:0, v3:0, v5:0, v7:0, v9:0, 2, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: TRUE f_1544(v4716:0, v4717:0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1544(v4716:0, v4750:0, v4718:1, v4720:1, v4723:1, 3 + v4718:1, 3 + v4720:1, 3 + v4723:1, 3, 1, 4) :|: v4718:1 > 0 && v4720:1 > 0 && v4717:0 < 0 && v4723:1 > 0 && v4750:0 + v4717:0 = 0 && v4750:0 > 0 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1483(v4038:0, v4039:0, v4483:0, v4500:0, v4519:0, 0, 3 + v4483:0, 3 + v4500:0, 3 + v4519:0, 3, 2, 1, 4) :|: v4038:0 > 2 && v4039:0 > 1 && v4483:0 > 0 && v4500:0 > 0 && v4519:0 > 0 f_1351(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 0, 3, 1, 4) -> f_1908(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_554 -> f_1693(v1:0, v3:0, v5:0, v7:0, v9:0, 2, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v13:0 > 0 && v4429:0 > 0 f_554 -> f_1693(v1:0, v3:0, v5:0, v7:0, v9:0, 2, 0, 1, v4429:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: FALSE f_1544(v4716:0, 0, v4718:0, v4720:0, v4723:0, v4719:0, v4721:0, v4724:0, 3, 1, 4) -> f_1585(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: TRUE f_554 -> f_575(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 1, 0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v11:0 < 1 f_1859(v4038:0, v6053:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4137:0, v4138:0, v4178:0, v4179:0, v4198:0, v4199:0, 0, v4039:0, 1, 3, 2, 4) -> f_1906(2, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE Filtered unneeded arguments: f_1483(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13) -> f_1483(x1, x2) f_1351(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24) -> f_1351(x1, x2) f_2036(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16) -> f_2036(x6, x9) f_1544(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) -> f_1544(x1, x2) f_2108(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17) -> f_2108(x9, x10) f_1945(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18) -> f_1945(x9, x10) f_1859(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26) -> f_1859(x1, x2) f_1925(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19) -> f_1925(x6, x9, x10, x11) f_773(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18) -> f_773(x1, x2) f_809(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26) -> f_809(x1, x2) f_1968(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19) -> f_1968(x6, x9, x10, x11) Removed division, modulo operations, cleaned up constraints. Obtained 95 rules.P rules: f_1483(cons_0, v4466:0) -> f_1534(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: TRUE && cons_0 = 0 f_1351(v4038:0, sum~cons_1~v6053:0) -> f_1859(v4038:0, v6053:0) :|: v4038:0 > 2 && v6053:0 > 0 && sum~cons_1~v6053:0 = 1 + v6053:0 f_554 -> f_1351(1 + v16:0, v16:0) :|: v16:0 > -1 f_1483(v4465:0, v4466:0) -> f_1483(v4713:0, v4466:0) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_554 -> f_1643(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v4429:0 > 0 && v16:0 > -1 f_2036(v11:0, v7449:0) -> f_2117(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v7845:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7845:0 < v11:0 && v7449:0 > 0 f_2036(v11:0, v7449:0) -> f_2117(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v7845:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7845:0 > v11:0 && v7449:0 > 0 f_554 -> f_1505(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, v4467:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v4408:0 > 0 && v9:0 > 0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 2, v4718:0, v4720:0, v4723:0, 0, 1, 1, 1 + v4716:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 < -1 && v4716:0 > 0 && v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 2, v4718:0, v4720:0, v4723:0, 0, 1, 1, 1 + v4716:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4716:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_2108(v7449:0, v7607:0) -> f_2134(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v7607:0 < 2 && v7449:0 > 1 f_554 -> f_1925(1 + v16:0, v4429:0, v4545:0, v6528:0) :|: v16:0 > -1 && v4429:0 > 0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6760:0, v4716:0 + v6760:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 < -1 && v4716:0 + v6760:0 > 1 && v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6760:0, v4716:0 + v6760:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4716:0 + v6760:0 > 1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1945(v4429:0, v4545:0) -> f_2019(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v4545:0 < 2 && v4429:0 > 1 f_1483(v4465:0, v4466:0) -> f_1597(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_1859(v4038:0, v6053:0) -> f_1351(v4038:0, v6053:0) :|: TRUE f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1655(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1655(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1945(v4429:0, v4545:0) -> f_2003(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4545:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v4429:0 < 2 f_1351(v4038:0, v4039:0) -> f_1768(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1483(v4465:0, v4466:0) -> f_1826(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_1925(v11:0, v4429:0, v4545:0, v6528:0) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6528:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6528:0 < v11:0 f_1925(v11:0, v4429:0, v4545:0, v6528:0) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6528:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6528:0 > v11:0 f_1483(v4465:0, v4466:0) -> f_1769(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_554 -> f_1473(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v4429:0 > 0 && v16:0 > -1 f_554 -> f_1968(1 + v16:0, v4429:0, v4545:0, v6740:0) :|: v16:0 > -1 && v4429:0 > 0 f_1544(v4716:0, v4717:0) -> f_1871(v4716:0, v4717:0, v4718:0, v4720:0, v4723:0, 1, v4750:0, v6539:0, v4719:0, v4721:0, v4724:0, 3, 0, 4) :|: v4750:0 + v4717:0 = 0 && v4750:0 > 0 && v4717:0 < 0 f_1483(sum~v4722:0~v4466:0, v4466:0) -> f_1483(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > -1 && v4722:0 + v4466:0 < 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1483(sum~v4722:0~v4466:0, v4466:0) -> f_1483(v4722:0, v4466:0) :|: v4722:0 + v4466:0 > 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_554 -> f_1544(v4429:0, v4545:0) :|: v4429:0 > 0 f_554 -> f_1436(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v4408:0 < 1 && v9:0 > 0 f_2108(v7449:0, v7607:0) -> f_2132 :|: v7607:0 > 1 && v7449:0 > 1 f_554 -> f_1745(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v9:0 > 0 && v7:0 > 0 f_2036(v11:0, v7449:0) -> f_2070(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_773(v315:0, v316:0) -> f_1544(v315:0, v316:0) :|: TRUE f_1351(cons_2, v4039:0) -> f_1396(2, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE && cons_2 = 2 f_1483(v4465:0, v4466:0) -> f_1538(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4465:0 < 0 f_2036(v11:0, v7449:0) -> f_2108(v7449:0, v7607:0) :|: v7449:0 > 0 f_1483(sum~v4722:0~v4466:0, v4466:0) -> f_1767(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4722:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 < 0 && v4722:0 + v4466:0 > -1 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1483(sum~v4722:0~v4466:0, v4466:0) -> f_1767(v4722:0 + v4466:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, v4722:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 > 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1351(v4038:0, v4039:0) -> f_1537(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1945(v4429:0, v4545:0) -> f_2015 :|: v4545:0 > 1 && v4429:0 > 1 f_1483(v4465:0, v4466:0) -> f_1909(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_1351(v4038:0, v4039:0) -> f_1427(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: v4038:0 > 2 && v4039:0 < 2 f_554 -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, v6346:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v4429:0 > 0 && v6346:0 < 1 + v16:0 f_554 -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, v6346:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v16:0 > -1 && v4429:0 > 0 && v6346:0 > 1 + v16:0 f_554 -> f_582(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v11:0 > 0 && v9:0 > 0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1544(v4716:0, v4876:0) :|: v4876:0 > 0 && v4876:0 < -1 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1544(v4716:0, v4876:0) :|: v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1351(v4038:0, v4039:0) -> f_1640(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1544(v4716:0, v4717:0) -> f_1871(v4716:0, -1, v4718:0, v4720:0, v4723:0, 1, 1, 1, v4719:0, v4721:0, v4724:0, 3, 0, 4) :|: v4717:0 < 0 f_1859(v4038:0, v6053:0) -> f_2023(v4038:0, 2, v4137:0, v4178:0, v4198:0, 0, 1, 1, v4138:0, v4179:0, v4199:0, 3, 2, 4) :|: TRUE f_554 -> f_1459(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v4429:0 < 1 && v16:0 > -1 f_554 -> f_1489(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, v4467:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v4408:0 > 0 && v9:0 > 0 f_554 -> f_1510(v1:0, v3:0, v5:0, v7:0, v9:0, 1 + v16:0, 0, 1, v4429:0, v4545:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v4429:0 > 0 && v16:0 > -1 f_1859(v4038:0, v6053:0) -> f_2023(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v6053:0, v4138:0, v4179:0, v4199:0, 3, 2, 4) :|: TRUE f_809(v341:0, v342:0) -> f_1483(v341:0, v342:0) :|: TRUE f_2036(v11:0, v7449:0) -> f_2050(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 < 1 f_1483(v4465:0, v4466:0) -> f_1837(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_554 -> f_2036(1 + v16:0, v7449:0) :|: v16:0 > -1 f_1968(v11:0, v4429:0, v4545:0, v6740:0) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6740:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6740:0 < v11:0 f_1968(v11:0, v4429:0, v4545:0, v6740:0) -> f_1967(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v4429:0, v4545:0, v6740:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4, 2) :|: v6740:0 > v11:0 f_1351(cons_1, cons_0) -> f_1379(1, 0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE && cons_1 = 1 && cons_0 = 0 f_1351(v4038:0, v4039:0) -> f_1700(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1544(v4716:0, v4717:0) -> f_1592(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: v4717:0 < 0 f_1859(v4038:0, v6053:0) -> f_1905(1, 0, v4137:0, v4178:0, v4198:0, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE f_1351(v4038:0, v4039:0) -> f_1596(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1968(v11:0, v4429:0, v4545:0, v11:01) -> f_1945(v4429:0, v4545:0) :|: TRUE && v11:0 = v11:01 f_2036(v11:0, v7449:0) -> f_2057(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_2036(v11:0, v7449:0) -> f_2111(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_2036(v11:0, v7449:0) -> f_1544(v7449:0, v7607:0) :|: v7449:0 > 0 f_1483(sum~v4722:0~v4466:0, v4466:0) -> f_1767(v4722:0 + v4466:0, v4722:0 + v4466:0, v4483:0, v4500:0, v4519:0, 0, 0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 < 0 && v4722:0 + v4466:0 > -1 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1483(sum~v4722:0~v4466:0, v4466:0) -> f_1767(v4722:0 + v4466:0, v4722:0 + v4466:0, v4483:0, v4500:0, v4519:0, 0, 0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4722:0 + v4466:0 > 0 && sum~v4722:0~v4466:0 = v4722:0 + v4466:0 f_1544(v4716:0, cons_1) -> f_1616(v4716:0, 1, v4718:0, v4720:0, v4723:0, 0, v4719:0, v4721:0, v4724:0, 3, 4) :|: TRUE && cons_1 = 1 f_2108(v7449:0, v7607:0) -> f_2127(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7607:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 < 2 f_2036(v11:0, v7449:0) -> f_2110(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7449:0 > 0 f_554 -> f_1945(v4429:0, v4545:0) :|: v4429:0 > 0 f_1351(v4038:0, v4039:0) -> f_1836(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6550:0, v4716:0 + v6550:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 < -1 && v4716:0 + v6550:0 > 2 && v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 1 + v4876:0, v4718:0, v4720:0, v4723:0, 0, v4876:0, v6550:0, v4716:0 + v6550:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 > 0 && v4716:0 + v6550:0 > 2 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1483(v4465:0, v4466:0) -> f_1641(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_1483(v4465:0, v4466:0) -> f_1701(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4713:0 + v4465:0 = 0 && v4713:0 > 0 && v4465:0 < 0 f_554 -> f_1434(v4038:0, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE f_554 -> f_1784(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4, 2) :|: v3:0 > 0 && v4429:0 > 1 && v1:0 > 0 && v5:0 > 0 && v9:0 > 0 && v7:0 > 0 f_554 -> f_1452(v1:0, v3:0, v5:0, v7:0, v9:0, 1, 0, v4408:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v4408:0 > 0 && v9:0 > 0 f_1925(v11:0, v4429:0, v4545:0, v11:01) -> f_1945(v4429:0, v4545:0) :|: TRUE && v11:0 = v11:01 f_1544(v4716:0, v4717:0) -> f_1544(v4716:0, v4750:0) :|: v4750:0 + v4717:0 = 0 && v4750:0 > 0 && v4717:0 < 0 f_1351(v4038:0, v4039:0) -> f_1483(v4038:0, v4039:0) :|: v4038:0 > 2 && v4039:0 > 1 f_1351(v4038:0, v4039:0) -> f_1908(v4465:0, v4466:0, v4483:0, v4500:0, v4519:0, 0, 1, v4713:0, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: v4038:0 > 2 && v4039:0 > 1 f_554 -> f_1693(v1:0, v3:0, v5:0, v7:0, v9:0, 2, 0, 1, v4429:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v4429:0 > 0 && v9:0 > 0 f_554 -> f_1693(v1:0, v3:0, v5:0, v7:0, v9:0, 2, 0, 1, v4429:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: FALSE f_1544(v4716:0, cons_0) -> f_1585(v4716:0, 0, v4718:0, v4720:0, v4723:0, 1, v4719:0, v4721:0, v4724:0, 3, 4) :|: TRUE && cons_0 = 0 f_554 -> f_575(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 1, 0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v11:0 < 1 && v9:0 > 0 f_1859(v4038:0, v6053:0) -> f_1906(2, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE ---------------------------------------- (125) Obligation: Rules: f_1483(cons_0, v4466:0) -> f_1534(0, v4466:0, v4483:0, v4500:0, v4519:0, 1, v4484:0, v4501:0, v4520:0, 3, 2, 4) :|: TRUE && cons_0 = 0 f_1351(v4038:0, sum~cons_1~v6053:0) -> f_1859(v4038:0, v6053:0) :|: v4038:0 > 2 && v6053:0 > 0 && sum~cons_1~v6053:0 = 1 + v6053:0 f_554 -> f_1351(1 + v16:0, v16:0) :|: v16:0 > -1 f_1483(x, x1) -> f_1483(x2, x1) :|: x2 + x = 0 && x2 > 0 && x < 0 f_554 -> f_1643(x3, x4, x5, x6, x7, 1 + x8, 0, 1, x9, 3 + x3, 3 + x4, 3 + x5, 3 + x6, 3 + x7, 3, 4, 2) :|: x3 > 0 && x4 > 0 && x5 > 0 && x6 > 0 && x7 > 0 && x9 > 0 && x8 > -1 f_2036(v11:0, v7449:0) -> f_2117(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 0, 1, v7449:0, v7607:0, v7845:0, v2:0, v4:0, v6:0, v8:0, v10:0, 3, 4) :|: v7845:0 < v11:0 && v7449:0 > 0 f_2036(x10, x11) -> f_2117(x12, x13, x14, x15, x16, x10, 0, 1, x11, x17, x18, x19, x20, x21, x22, x23, 3, 4) :|: x18 > x10 && x11 > 0 f_554 -> f_1505(x24, x25, x26, x27, x28, 1, 0, x29, x30, 3 + x24, 3 + x25, 3 + x26, 3 + x27, 3 + x28, 3, 4) :|: x24 > 0 && x25 > 0 && x26 > 0 && x27 > 0 && x29 > 0 && x28 > 0 f_1544(v4716:0, sum~cons_1~v4876:0) -> f_1891(v4716:0, 2, v4718:0, v4720:0, v4723:0, 0, 1, 1, 1 + v4716:0, v4719:0, v4721:0, v4724:0, 3, 1, 2, 4) :|: v4876:0 < -1 && v4716:0 > 0 && v4876:0 > 0 && sum~cons_1~v4876:0 = 1 + v4876:0 f_1544(x31, x32) -> f_1891(x31, 2, x33, x34, x35, 0, 1, 1, 1 + x31, x36, x37, x38, 3, 1, 2, 4) :|: x39 > 0 && x31 > 0 && x32 = 1 + x39 f_2108(x40, x41) -> f_2134(x42, x43, x44, x45, x46, x47, 0, 1, x40, x41, x48, x49, x50, x51, x52, 3, 4, 2) :|: x41 < 2 && x40 > 1 f_554 -> f_1925(1 + x53, x54, x55, x56) :|: x53 > -1 && x54 > 0 f_1544(x57, x58) -> f_1891(x57, 1 + x59, x60, x61, x62, 0, x59, x63, x57 + x63, x64, x65, x66, 3, 1, 2, 4) :|: x59 < -1 && x57 + x63 > 1 && x59 > 0 && x58 = 1 + x59 f_1544(x67, x68) -> f_1891(x67, 1 + x69, x70, x71, x72, 0, x69, x73, x67 + x73, x74, x75, x76, 3, 1, 2, 4) :|: x69 > 0 && x67 + x73 > 1 && x68 = 1 + x69 f_1945(x77, x78) -> f_2019(x79, x80, x81, x82, x83, x84, 0, 1, x77, x78, x85, x86, x87, x88, x89, 3, 4, 2) :|: x78 < 2 && x77 > 1 f_1483(x90, x91) -> f_1597(x90, x91, x92, x93, x94, 0, 1, x95, x96, x97, x98, 3, 2, 4) :|: x95 + x90 = 0 && x95 > 0 && x90 < 0 f_1859(x99, x100) -> f_1351(x99, x100) :|: TRUE f_1544(x101, x102) -> f_1655(x101, 0, x103, x104, x105, 1, x106, x107, x108, 3, 4) :|: x109 > 0 && x109 < -1 && x102 = 1 + x109 f_1544(x110, x111) -> f_1655(x110, 0, x112, x113, x114, 1, x115, x116, x117, 3, 4) :|: x118 > 0 && x111 = 1 + x118 f_1945(x119, x120) -> f_2003(x121, x122, x123, x124, x125, x126, 0, 1, x120, x127, x128, x129, x130, x131, 3, 4, 2) :|: x119 < 2 f_1351(x132, x133) -> f_1768(x134, x135, x136, x137, x138, 0, 1, x139, x140, x141, x142, 3, 2, 4) :|: x132 > 2 && x133 > 1 f_1483(x143, x144) -> f_1826(x143, x144, x145, x146, x147, 0, 1, x148, x149, x150, x151, 3, 2, 4) :|: x148 + x143 = 0 && x148 > 0 && x143 < 0 f_1925(x152, x153, x154, x155) -> f_1967(x156, x157, x158, x159, x160, x152, 0, 1, x153, x154, x155, x161, x162, x163, x164, x165, 3, 4, 2) :|: x155 < x152 f_1925(x166, x167, x168, x169) -> f_1967(x170, x171, x172, x173, x174, x166, 0, 1, x167, x168, x169, x175, x176, x177, x178, x179, 3, 4, 2) :|: x169 > x166 f_1483(x180, x181) -> f_1769(x180, x181, x182, x183, x184, 0, 1, x185, x186, x187, x188, 3, 2, 4) :|: x185 + x180 = 0 && x185 > 0 && x180 < 0 f_554 -> f_1473(x189, x190, x191, x192, x193, 1 + x194, 0, 1, x195, 3 + x189, 3 + x190, 3 + x191, 3 + x192, 3 + x193, 3, 4, 2) :|: x189 > 0 && x190 > 0 && x191 > 0 && x192 > 0 && x193 > 0 && x195 > 0 && x194 > -1 f_554 -> f_1968(1 + x196, x197, x198, x199) :|: x196 > -1 && x197 > 0 f_1544(x200, x201) -> f_1871(x200, x201, x202, x203, x204, 1, x205, x206, x207, x208, x209, 3, 0, 4) :|: x205 + x201 = 0 && x205 > 0 && x201 < 0 f_1483(x210, x211) -> f_1483(x212, x211) :|: x212 + x211 > -1 && x212 + x211 < 0 && x210 = x212 + x211 f_1483(x213, x214) -> f_1483(x215, x214) :|: x215 + x214 > 0 && x213 = x215 + x214 f_554 -> f_1544(v4429:0, v4545:0) :|: v4429:0 > 0 f_554 -> f_1436(x216, x217, x218, x219, x220, 1, 0, x221, 3 + x216, 3 + x217, 3 + x218, 3 + x219, 3 + x220, 3, 4) :|: x216 > 0 && x217 > 0 && x218 > 0 && x219 > 0 && x221 < 1 && x220 > 0 f_2108(x222, x223) -> f_2132 :|: x223 > 1 && x222 > 1 f_554 -> f_1745(x224, x225, x226, x227, x228, 1, 0, 3 + x224, 3 + x225, 3 + x226, 3 + x227, 3 + x228, 3, 4) :|: x224 > 0 && x225 > 0 && x226 > 0 && x228 > 0 && x227 > 0 f_2036(x229, x230) -> f_2070(x231, x232, x233, x234, x235, x229, 0, 1, x230, x236, x237, x238, x239, x240, x241, 3, 4) :|: x230 > 0 f_773(v315:0, v316:0) -> f_1544(v315:0, v316:0) :|: TRUE f_1351(cons_2, v4039:0) -> f_1396(2, v4039:0, v4137:0, v4178:0, v4198:0, 0, 1, v4040:0, v4041:0, v4042:0, v4043:0, v4044:0, v4045:0, v4046:0, v4047:0, v4048:0, v4049:0, v4050:0, v4051:0, v4138:0, v4179:0, v4199:0, 3, 4) :|: TRUE && cons_2 = 2 f_1483(x242, x243) -> f_1538(0, x243, x244, x245, x246, 1, x247, x248, x249, 3, 2, 4) :|: x242 < 0 f_2036(x250, x251) -> f_2108(x251, x252) :|: x251 > 0 f_1483(x253, x254) -> f_1767(x255 + x254, x254, x256, x257, x258, 0, x255, 1, x259, x260, x261, 3, 2, 4) :|: x255 + x254 < 0 && x255 + x254 > -1 && x253 = x255 + x254 f_1483(x262, x263) -> f_1767(x264 + x263, x263, x265, x266, x267, 0, x264, 1, x268, x269, x270, 3, 2, 4) :|: x264 + x263 > 0 && x262 = x264 + x263 f_1351(x271, x272) -> f_1537(0, x273, x274, x275, x276, 1, x277, x278, x279, 3, 2, 4) :|: x271 > 2 && x272 > 1 f_1945(x280, x281) -> f_2015 :|: x281 > 1 && x280 > 1 f_1483(x282, x283) -> f_1909(x282, x283, x284, x285, x286, 0, 1, x287, x288, x289, x290, 3, 2, 4) :|: x287 + x282 = 0 && x287 > 0 && x282 < 0 f_1351(x291, x292) -> f_1427(x291, x292, x293, x294, x295, 0, 1, x296, x297, x298, x299, x300, x301, x302, x303, x304, x305, x306, x307, x308, x309, x310, 3, 4) :|: x291 > 2 && x292 < 2 f_554 -> f_1967(x311, x312, x313, x314, x315, 1 + x316, 0, 1, x317, x318, x319, 3 + x311, 3 + x312, 3 + x313, 3 + x314, 3 + x315, 3, 4, 2) :|: x311 > 0 && x312 > 0 && x313 > 0 && x314 > 0 && x315 > 0 && x316 > -1 && x317 > 0 && x319 < 1 + x316 f_554 -> f_1967(x320, x321, x322, x323, x324, 1 + x325, 0, 1, x326, x327, x328, 3 + x320, 3 + x321, 3 + x322, 3 + x323, 3 + x324, 3, 4, 2) :|: x320 > 0 && x321 > 0 && x322 > 0 && x323 > 0 && x324 > 0 && x325 > -1 && x326 > 0 && x328 > 1 + x325 f_554 -> f_582(x329, x330, x331, x332, x333, x334, 0, 1, 3 + x329, 3 + x330, 3 + x331, 3 + x332, 3 + x333, 3, 4) :|: x329 > 0 && x330 > 0 && x331 > 0 && x332 > 0 && x334 > 0 && x333 > 0 f_1544(x335, x336) -> f_1544(x335, x337) :|: x337 > 0 && x337 < -1 && x336 = 1 + x337 f_1544(x338, x339) -> f_1544(x338, x340) :|: x340 > 0 && x339 = 1 + x340 f_1351(x341, x342) -> f_1640(x343, x344, x345, x346, x347, 0, 1, x348, x349, x350, x351, 3, 2, 4) :|: x341 > 2 && x342 > 1 f_1544(x352, x353) -> f_1871(x352, -1, x354, x355, x356, 1, 1, 1, x357, x358, x359, 3, 0, 4) :|: x353 < 0 f_1859(x360, x361) -> f_2023(x360, 2, x362, x363, x364, 0, 1, 1, x365, x366, x367, 3, 2, 4) :|: TRUE f_554 -> f_1459(x368, x369, x370, x371, x372, 1 + x373, 0, 1, x374, 3 + x368, 3 + x369, 3 + x370, 3 + x371, 3 + x372, 3, 4, 2) :|: x368 > 0 && x369 > 0 && x370 > 0 && x371 > 0 && x372 > 0 && x374 < 1 && x373 > -1 f_554 -> f_1489(x375, x376, x377, x378, x379, 1, 0, x380, x381, 3 + x375, 3 + x376, 3 + x377, 3 + x378, 3 + x379, 3, 4) :|: x375 > 0 && x376 > 0 && x377 > 0 && x378 > 0 && x380 > 0 && x379 > 0 f_554 -> f_1510(x382, x383, x384, x385, x386, 1 + x387, 0, 1, x388, x389, 3 + x382, 3 + x383, 3 + x384, 3 + x385, 3 + x386, 3, 4, 2) :|: x382 > 0 && x383 > 0 && x384 > 0 && x385 > 0 && x386 > 0 && x388 > 0 && x387 > -1 f_1859(x390, x391) -> f_2023(x390, x392, x393, x394, x395, 0, 1, x391, x396, x397, x398, 3, 2, 4) :|: TRUE f_809(v341:0, v342:0) -> f_1483(v341:0, v342:0) :|: TRUE f_2036(x399, x400) -> f_2050(x401, x402, x403, x404, x405, x399, 0, 1, x400, x406, x407, x408, x409, x410, 3, 4) :|: x400 < 1 f_1483(x411, x412) -> f_1837(x411, x412, x413, x414, x415, 0, 1, x416, x417, x418, x419, 3, 2, 4) :|: x416 + x411 = 0 && x416 > 0 && x411 < 0 f_554 -> f_2036(1 + x420, x421) :|: x420 > -1 f_1968(x422, x423, x424, x425) -> f_1967(x426, x427, x428, x429, x430, x422, 0, 1, x423, x424, x425, x431, x432, x433, x434, x435, 3, 4, 2) :|: x425 < x422 f_1968(x436, x437, x438, x439) -> f_1967(x440, x441, x442, x443, x444, x436, 0, 1, x437, x438, x439, x445, x446, x447, x448, x449, 3, 4, 2) :|: x439 > x436 f_1351(x450, x451) -> f_1379(1, 0, x452, x453, x454, x455, x456, x457, x458, x459, x460, x461, x462, x463, x464, x465, x466, x467, x468, x469, 3, 4) :|: TRUE && x450 = 1 && x451 = 0 f_1351(x470, x471) -> f_1700(x472, x473, x474, x475, x476, 0, 1, x477, x478, x479, x480, 3, 2, 4) :|: x470 > 2 && x471 > 1 f_1544(x481, x482) -> f_1592(x481, 0, x483, x484, x485, 1, x486, x487, x488, 3, 4) :|: x482 < 0 f_1859(x489, x490) -> f_1905(1, 0, x491, x492, x493, x494, x495, x496, x497, x498, x499, x500, x501, x502, x503, x504, x505, x506, x507, x508, 3, 4) :|: TRUE f_1351(x509, x510) -> f_1596(x511, x512, x513, x514, x515, 0, 1, x516, x517, x518, x519, 3, 2, 4) :|: x509 > 2 && x510 > 1 f_1968(x520, x521, x522, x523) -> f_1945(x521, x522) :|: TRUE && x520 = x523 f_2036(x524, x525) -> f_2057(x526, x527, x528, x529, x530, x524, 0, 1, x525, x531, x532, x533, x534, x535, 3, 4) :|: x525 > 0 f_2036(x536, x537) -> f_2111(x538, x539, x540, x541, x542, x536, 0, 1, x537, x543, x544, x545, x546, x547, 3, 4) :|: x537 > 0 f_2036(x548, x549) -> f_1544(x549, x550) :|: x549 > 0 f_1483(x551, x552) -> f_1767(x553 + x552, x553 + x552, x554, x555, x556, 0, 0, 1, x557, x558, x559, 3, 2, 4) :|: x553 + x552 < 0 && x553 + x552 > -1 && x551 = x553 + x552 f_1483(x560, x561) -> f_1767(x562 + x561, x562 + x561, x563, x564, x565, 0, 0, 1, x566, x567, x568, 3, 2, 4) :|: x562 + x561 > 0 && x560 = x562 + x561 f_1544(x569, x570) -> f_1616(x569, 1, x571, x572, x573, 0, x574, x575, x576, 3, 4) :|: TRUE && x570 = 1 f_2108(x577, x578) -> f_2127(x579, x580, x581, x582, x583, x584, 0, 1, x578, x585, x586, x587, x588, x589, 3, 4) :|: x577 < 2 f_2036(x590, x591) -> f_2110(x592, x593, x594, x595, x596, x590, 0, 1, x591, x597, x598, x599, x600, x601, 3, 4) :|: x591 > 0 f_554 -> f_1945(x602, x603) :|: x602 > 0 f_1351(x604, x605) -> f_1836(x606, x607, x608, x609, x610, 0, 1, x611, x612, x613, x614, 3, 2, 4) :|: x604 > 2 && x605 > 1 f_1544(x615, x616) -> f_1891(x615, 1 + x617, x618, x619, x620, 0, x617, x621, x615 + x621, x622, x623, x624, 3, 1, 2, 4) :|: x617 < -1 && x615 + x621 > 2 && x617 > 0 && x616 = 1 + x617 f_1544(x625, x626) -> f_1891(x625, 1 + x627, x628, x629, x630, 0, x627, x631, x625 + x631, x632, x633, x634, 3, 1, 2, 4) :|: x627 > 0 && x625 + x631 > 2 && x626 = 1 + x627 f_1483(x635, x636) -> f_1641(x635, x636, x637, x638, x639, 0, 1, x640, x641, x642, x643, 3, 2, 4) :|: x640 + x635 = 0 && x640 > 0 && x635 < 0 f_1483(x644, x645) -> f_1701(x644, x645, x646, x647, x648, 0, 1, x649, x650, x651, x652, 3, 2, 4) :|: x649 + x644 = 0 && x649 > 0 && x644 < 0 f_554 -> f_1434(x653, x654, x655, x656, x657, 0, 1, x658, x659, x660, x661, x662, x663, x664, x665, x666, x667, x668, x669, x670, x671, x672, 3, 4) :|: TRUE f_554 -> f_1784(x673, x674, x675, x676, x677, 1, 0, x678, 3 + x673, 3 + x674, 3 + x675, 3 + x676, 3 + x677, 3, 4, 2) :|: x674 > 0 && x678 > 1 && x673 > 0 && x675 > 0 && x677 > 0 && x676 > 0 f_554 -> f_1452(x679, x680, x681, x682, x683, 1, 0, x684, 3 + x679, 3 + x680, 3 + x681, 3 + x682, 3 + x683, 3, 4) :|: x679 > 0 && x680 > 0 && x681 > 0 && x682 > 0 && x684 > 0 && x683 > 0 f_1925(x685, x686, x687, x688) -> f_1945(x686, x687) :|: TRUE && x685 = x688 f_1544(x689, x690) -> f_1544(x689, x691) :|: x691 + x690 = 0 && x691 > 0 && x690 < 0 f_1351(x692, x693) -> f_1483(x692, x693) :|: x692 > 2 && x693 > 1 f_1351(x694, x695) -> f_1908(x696, x697, x698, x699, x700, 0, 1, x701, x702, x703, x704, 3, 2, 4) :|: x694 > 2 && x695 > 1 f_554 -> f_1693(x705, x706, x707, x708, x709, 2, 0, 1, x710, 3 + x705, 3 + x706, 3 + x707, 3 + x708, 3 + x709, 3, 4) :|: x705 > 0 && x706 > 0 && x707 > 0 && x708 > 0 && x710 > 0 && x709 > 0 f_554 -> f_1693(x711, x712, x713, x714, x715, 2, 0, 1, x716, x717, x718, x719, x720, x721, 3, 4) :|: FALSE f_1544(x722, x723) -> f_1585(x722, 0, x724, x725, x726, 1, x727, x728, x729, 3, 4) :|: TRUE && x723 = 0 f_554 -> f_575(x730, x731, x732, x733, x734, x735, 1, 0, 3 + x730, 3 + x731, 3 + x732, 3 + x733, 3 + x734, 3, 4) :|: x730 > 0 && x731 > 0 && x732 > 0 && x733 > 0 && x735 < 1 && x734 > 0 f_1859(x736, x737) -> f_1906(2, x738, x739, x740, x741, 0, 1, x742, x743, x744, x745, x746, x747, x748, x749, x750, x751, x752, x753, x754, x755, x756, 3, 4) :|: TRUE Start term: f_554 ---------------------------------------- (126) IRS2T2 (EQUIVALENT) Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: (f_1483_24,1) (f_1534_24,2) (f_1351_24,3) (f_1859_24,4) (f_554_24,5) (f_1643_24,6) (f_2036_24,7) (f_2117_24,8) (f_1505_24,9) (f_1544_24,10) (f_1891_24,11) (f_2108_24,12) (f_2134_24,13) (f_1925_24,14) (f_1945_24,15) (f_2019_24,16) (f_1597_24,17) (f_1655_24,18) (f_2003_24,19) (f_1768_24,20) (f_1826_24,21) (f_1967_24,22) (f_1769_24,23) (f_1473_24,24) (f_1968_24,25) (f_1871_24,26) (f_1436_24,27) (f_2132_24,28) (f_1745_24,29) (f_2070_24,30) (f_773_24,31) (f_1396_24,32) (f_1538_24,33) (f_1767_24,34) (f_1537_24,35) (f_2015_24,36) (f_1909_24,37) (f_1427_24,38) (f_582_24,39) (f_1640_24,40) (f_2023_24,41) (f_1459_24,42) (f_1489_24,43) (f_1510_24,44) (f_809_24,45) (f_2050_24,46) (f_1837_24,47) (f_1379_24,48) (f_1700_24,49) (f_1592_24,50) (f_1905_24,51) (f_1596_24,52) (f_2057_24,53) (f_2111_24,54) (f_1616_24,55) (f_2127_24,56) (f_2110_24,57) (f_1836_24,58) (f_1641_24,59) (f_1701_24,60) (f_1434_24,61) (f_1784_24,62) (f_1452_24,63) (f_1908_24,64) (f_1693_24,65) (f_1585_24,66) (f_575_24,67) (f_1906_24,68) ---------------------------------------- (127) Obligation: START: 5; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 = 0 && oldX0 = 0); x0 := 0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 2; x11 := 4; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 2; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX0 > 2 && oldX24 > 0 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := oldX1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 4; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 > -1); x0 := 1 + oldX24; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 3; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := -(oldX0 - 0); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 + oldX0 = 0 && oldX24 > 0 && oldX0 < 0); x0 := -(oldX0 - 0); x1 := oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1 + oldX29; x6 := 0; x7 := 1; x8 := oldX30; x9 := 3 + oldX24; x10 := 3 + oldX25; x11 := 3 + oldX26; x12 := 3 + oldX27; x13 := 3 + oldX28; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 6; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX30 < oldX0 && oldX1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := 3; x17 := 4; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 8; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX30 > oldX0 && oldX1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := 3; x17 := 4; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 8; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX30; x9 := 3 + oldX24; x10 := 3 + oldX25; x11 := 3 + oldX26; x12 := 3 + oldX27; x13 := 3 + oldX28; x14 := 3; x15 := 4; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 9; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX38 := oldX1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX38 < -1 && oldX0 > 0 && oldX38 > 0 && oldX1 = 1 + oldX38); x0 := oldX0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := 1 + oldX0; x9 := oldX27; x10 := oldX28; x11 := oldX29; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX38 := oldX1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX38 > 0 && oldX0 > 0 && oldX1 = 1 + oldX38); x0 := oldX0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := 1 + oldX0; x9 := oldX27; x10 := oldX28; x11 := oldX29; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 11; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX1 < 2 && oldX0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX0; x9 := oldX1; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := 2; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 13; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1 && oldX25 > 0); x0 := 1 + oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 14; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(oldX24 < -1 && oldX0 + oldX28 > 1 && oldX24 > 0 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := 1 + oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(oldX24 > 0 && oldX0 + oldX28 > 1 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := 1 + oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX1 < 2 && oldX0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX0; x9 := oldX1; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := 2; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 16; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 17; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 3; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX43 := oldX1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX43 > 0 && oldX43 < -1 && oldX1 = 1 + oldX43); x0 := oldX0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 18; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX43 := oldX1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX43 > 0 && oldX1 = 1 + oldX43); x0 := oldX0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 18; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX0 < 2); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := 2; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 19; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 20; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 21; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX3 < oldX0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX3 > oldX0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 23; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1 + oldX29; x6 := 0; x7 := 1; x8 := oldX30; x9 := 3 + oldX24; x10 := 3 + oldX25; x11 := 3 + oldX26; x12 := 3 + oldX27; x13 := 3 + oldX28; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 24; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1 && oldX25 > 0); x0 := 1 + oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 25; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX1 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX27 + oldX1 = 0 && oldX27 > 0 && oldX1 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := -(oldX1 - 0); x7 := oldX28; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := 3; x12 := 0; x13 := 4; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 26; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX0 - oldX1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 + oldX1 > -1 && oldX24 + oldX1 < 0 && oldX0 = oldX24 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX0 - oldX1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 + oldX1 > 0 && oldX0 = oldX24 + oldX1); x0 := oldX0 - oldX1; x1 := oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 10; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 < 1 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := 3 + oldX24; x9 := 3 + oldX25; x10 := 3 + oldX26; x11 := 3 + oldX27; x12 := 3 + oldX28; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 27; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX1 > 1 && oldX0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 28; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX28 > 0 && oldX27 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := 3 + oldX24; x8 := 3 + oldX25; x9 := 3 + oldX26; x10 := 3 + oldX27; x11 := 3 + oldX28; x12 := 3; x13 := 4; x14 := oldX29; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 29; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 30; FROM: 31; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 = 0 && oldX0 = 2); x0 := 2; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := oldX27; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := oldX36; x17 := oldX37; x18 := oldX38; x19 := oldX39; x20 := oldX40; x21 := oldX41; x22 := 3; x23 := 4; TO: 32; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX0 < 0); x0 := 0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 2; x11 := 4; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 33; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX1 > 0); x0 := oldX1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 12; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX0 - oldX1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX24 + oldX1 < 0 && oldX24 + oldX1 > -1 && oldX0 = oldX24 + oldX1); x0 := oldX24 + oldX1; x1 := oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX0 - oldX1; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX0 - oldX1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX24 + oldX1 > 0 && oldX0 = oldX24 + oldX1); x0 := oldX24 + oldX1; x1 := oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX0 - oldX1; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := 0; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 1; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := 3; x10 := 2; x11 := 4; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 35; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX1 > 1 && oldX0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 36; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 37; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX0 > 2 && oldX1 < 2); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := oldX27; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := oldX36; x17 := oldX37; x18 := oldX38; x19 := oldX39; x20 := oldX40; x21 := oldX41; x22 := 3; x23 := 4; TO: 38; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX29 > -1 && oldX30 > 0 && oldX32 < 1 + oldX29); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1 + oldX29; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3 + oldX24; x12 := 3 + oldX25; x13 := 3 + oldX26; x14 := 3 + oldX27; x15 := 3 + oldX28; x16 := 3; x17 := 4; x18 := 2; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 22; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX29 > -1 && oldX30 > 0 && oldX32 > 1 + oldX29); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1 + oldX29; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3 + oldX24; x12 := 3 + oldX25; x13 := 3 + oldX26; x14 := 3 + oldX27; x15 := 3 + oldX28; x16 := 3; x17 := 4; x18 := 2; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 22; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := 3 + oldX24; x9 := 3 + oldX25; x10 := 3 + oldX26; x11 := 3 + oldX27; x12 := 3 + oldX28; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 39; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 > 0 && oldX24 < -1 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := oldX1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 > 0 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := oldX1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 40; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(oldX1 < 0); x0 := oldX0; x1 := -1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := 1; x7 := 1; x8 := oldX27; x9 := oldX28; x10 := oldX29; x11 := 3; x12 := 0; x13 := 4; x14 := oldX30; x15 := oldX31; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 26; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(0 = 0); x0 := oldX0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX27; x9 := oldX28; x10 := oldX29; x11 := 3; x12 := 2; x13 := 4; x14 := oldX30; x15 := oldX31; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 41; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 < 1 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1 + oldX29; x6 := 0; x7 := 1; x8 := oldX30; x9 := 3 + oldX24; x10 := 3 + oldX25; x11 := 3 + oldX26; x12 := 3 + oldX27; x13 := 3 + oldX28; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 42; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX30; x9 := 3 + oldX24; x10 := 3 + oldX25; x11 := 3 + oldX26; x12 := 3 + oldX27; x13 := 3 + oldX28; x14 := 3; x15 := 4; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 43; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1 + oldX29; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := 3 + oldX24; x11 := 3 + oldX25; x12 := 3 + oldX26; x13 := 3 + oldX27; x14 := 3 + oldX28; x15 := 3; x16 := 4; x17 := 2; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 44; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 = 0); x0 := oldX0; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 1; x7 := oldX1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 41; FROM: 45; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 1; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX1 < 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 46; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 47; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1); x0 := 1 + oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 7; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX3 < oldX0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX3 > oldX0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0 && oldX0 = 1 && oldX1 = 0); x0 := 1; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := 3; x21 := 4; x22 := oldX42; x23 := oldX43; TO: 48; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 49; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX1 < 0); x0 := oldX0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 50; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0); x0 := 1; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := 3; x21 := 4; x22 := oldX42; x23 := oldX43; TO: 51; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 52; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0 && oldX0 = oldX3); x0 := oldX1; x1 := oldX2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 15; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 53; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 54; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX1 > 0); x0 := oldX1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX0 - oldX1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX24 + oldX1 < 0 && oldX24 + oldX1 > -1 && oldX0 = oldX24 + oldX1); x0 := oldX24 + oldX1; x1 := oldX24 + oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 0; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX0 - oldX1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX24 + oldX1 > 0 && oldX0 = oldX24 + oldX1); x0 := oldX24 + oldX1; x1 := oldX24 + oldX1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 0; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0 && oldX1 = 1); x0 := oldX0; x1 := 1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 55; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 < 2); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 56; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 57; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 15; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 58; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(oldX24 < -1 && oldX0 + oldX28 > 2 && oldX24 > 0 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := 1 + oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := oldX1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(oldX24 > 0 && oldX0 + oldX28 > 2 && oldX1 = 1 + oldX24); x0 := oldX0; x1 := 1 + oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 59; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(oldX0 - 0); oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(oldX27 + oldX0 = 0 && oldX27 > 0 && oldX0 < 0); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0 - 0); x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 60; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := 3; x23 := 4; TO: 61; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX25 > 0 && oldX29 > 1 && oldX24 > 0 && oldX26 > 0 && oldX28 > 0 && oldX27 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := 3 + oldX24; x9 := 3 + oldX25; x10 := 3 + oldX26; x11 := 3 + oldX27; x12 := 3 + oldX28; x13 := 3; x14 := 4; x15 := 2; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 62; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := 3 + oldX24; x9 := 3 + oldX25; x10 := 3 + oldX26; x11 := 3 + oldX27; x12 := 3 + oldX28; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 63; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0 && oldX0 = oldX3); x0 := oldX1; x1 := oldX2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 15; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := -(oldX1 - 0); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 + oldX1 = 0 && oldX24 > 0 && oldX1 < 0); x0 := oldX0; x1 := -(oldX1 - 0); x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX0; x1 := oldX1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 1; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(oldX0 > 2 && oldX1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 64; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 2; x6 := 0; x7 := 1; x8 := oldX29; x9 := 3 + oldX24; x10 := 3 + oldX25; x11 := 3 + oldX26; x12 := 3 + oldX27; x13 := 3 + oldX28; x14 := 3; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 65; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 2; x6 := 0; x7 := 1; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 65; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0 && oldX1 = 0); x0 := oldX0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 66; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 < 1 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 1; x7 := 0; x8 := 3 + oldX24; x9 := 3 + oldX25; x10 := 3 + oldX26; x11 := 3 + oldX27; x12 := 3 + oldX28; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 67; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0); x0 := 2; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 1; x7 := oldX28; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := oldX35; x15 := oldX36; x16 := oldX37; x17 := oldX38; x18 := oldX39; x19 := oldX40; x20 := oldX41; x21 := oldX42; x22 := 3; x23 := 4; TO: 68; ---------------------------------------- (128) T2 Underapproximation (COMPLETE) Added the following guard statements: Transition 1: assume(x1 >= 0); assume(x1 >= 0); Transition 3: assume(x1 <= 0); Transition 10: assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); ---------------------------------------- (129) Obligation: START: 5; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 = 0 && x0 = 0); x0 := 0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 2; x11 := 4; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 2; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x0 > 2 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 4; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 > -1); x0 := oldX24 + 1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 3; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := 0 - x0; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := 0 - x0; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 6; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX30 < x0 && x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := 3; x17 := 4; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 8; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX30 > x0 && x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := 3; x17 := 4; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 8; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 9; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX38 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(x1 - 1 < -1 && x0 > 0 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX0 + 1; x9 := oldX27; x10 := oldX28; x11 := oldX29; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX38 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(x1 - 1 > 0 && x0 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX0 + 1; x9 := oldX27; x10 := oldX28; x11 := oldX29; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 11; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x1 < 2 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX0; x9 := oldX1; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := 2; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 13; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1 && oldX25 > 0); x0 := oldX24 + 1; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 14; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 < -1 && x0 + oldX28 > 1 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 > 0 && x0 + oldX28 > 1 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x1 < 2 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX0; x9 := oldX1; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := 2; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 16; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 17; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 3; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX43 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x1 - 1 > 0 && x1 - 1 < -1 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 18; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX43 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 18; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x0 < 2); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := 2; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 19; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 20; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 21; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 < x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 > x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 23; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 24; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1 && oldX25 > 0); x0 := oldX24 + 1; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 25; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 - x1 + x1 = 0 && 0 - x1 > 0 && x1 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := 0 - oldX1; x7 := oldX28; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := 3; x12 := 0; x13 := 4; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 26; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x0 - x1 + x1 > -1 && x0 - x1 + x1 < 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 10; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 < 1 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 27; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(x1 > 1 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 28; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX28 > 0 && oldX27 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX24 + 3; x8 := oldX25 + 3; x9 := oldX26 + 3; x10 := oldX27 + 3; x11 := oldX28 + 3; x12 := 3; x13 := 4; x14 := oldX29; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 29; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 30; FROM: 31; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 = 0 && x0 = 2); x0 := 2; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := oldX27; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := oldX36; x17 := oldX37; x18 := oldX38; x19 := oldX39; x20 := oldX40; x21 := oldX41; x22 := 3; x23 := 4; TO: 32; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x0 < 0); x0 := 0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 2; x11 := 4; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 33; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 > 0); x0 := x1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 12; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 < 0 && x0 - x1 + x1 > -1 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX0 - oldX1; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX0 - oldX1; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := 0; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 1; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := 3; x10 := 2; x11 := 4; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 35; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(x1 > 1 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 36; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 37; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x0 > 2 && x1 < 2); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := oldX27; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := oldX36; x17 := oldX37; x18 := oldX38; x19 := oldX39; x20 := oldX40; x21 := oldX41; x22 := 3; x23 := 4; TO: 38; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX29 > -1 && oldX30 > 0 && oldX32 < 1 + oldX29); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX24 + 3; x12 := oldX25 + 3; x13 := oldX26 + 3; x14 := oldX27 + 3; x15 := oldX28 + 3; x16 := 3; x17 := 4; x18 := 2; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 22; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX29 > -1 && oldX30 > 0 && oldX32 > 1 + oldX29); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX24 + 3; x12 := oldX25 + 3; x13 := oldX26 + 3; x14 := oldX27 + 3; x15 := oldX28 + 3; x16 := 3; x17 := 4; x18 := 2; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 22; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 39; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 - 1 > 0 && x1 - 1 < -1 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 40; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 < 0); x0 := x0; x1 := -1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := 1; x7 := 1; x8 := oldX27; x9 := oldX28; x10 := oldX29; x11 := 3; x12 := 0; x13 := 4; x14 := oldX30; x15 := oldX31; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 26; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(0 = 0); x0 := x0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX27; x9 := oldX28; x10 := oldX29; x11 := 3; x12 := 2; x13 := 4; x14 := oldX30; x15 := oldX31; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 41; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 < 1 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 42; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 43; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX24 + 3; x11 := oldX25 + 3; x12 := oldX26 + 3; x13 := oldX27 + 3; x14 := oldX28 + 3; x15 := 3; x16 := 4; x17 := 2; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 44; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 = 0); x0 := x0; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 1; x7 := oldX1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 41; FROM: 45; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 1; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 < 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 46; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 47; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1); x0 := oldX24 + 1; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 7; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 < x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 > x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0 && x0 = 1 && x1 = 0); x0 := 1; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := 3; x21 := 4; x22 := oldX42; x23 := oldX43; TO: 48; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 49; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x1 < 0); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 50; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0); x0 := 1; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := 3; x21 := 4; x22 := oldX42; x23 := oldX43; TO: 51; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 52; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0 && x0 = x3); x0 := x1; x1 := x2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 15; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 53; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 54; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 > 0); x0 := x1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 < 0 && x0 - x1 + x1 > -1 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; assume(x1 >= 0); x1 := oldX24 + x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 0; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; assume(x1 >= 0); x1 := oldX24 + x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 0; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0 && x1 = 1); x0 := x0; x1 := 1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 55; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 < 2); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 56; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 57; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 15; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 58; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 < -1 && x0 + oldX28 > 2 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 > 0 && x0 + oldX28 > 2 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 59; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := 0 - x0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 0 - oldX0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 60; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := 3; x23 := 4; TO: 61; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX25 > 0 && oldX29 > 1 && oldX24 > 0 && oldX26 > 0 && oldX28 > 0 && oldX27 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := 2; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 62; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 63; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0 && x0 = x3); x0 := x1; x1 := x2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 15; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := 0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(0 - x1 + x1 = 0 && 0 - x1 > 0 && x1 < 0); x0 := x0; x1 := 0 - x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(x0 > 2 && x1 > 1); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 1; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 64; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 2; x6 := 0; x7 := 1; x8 := oldX29; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 65; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 2; x6 := 0; x7 := 1; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 65; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0 && x1 = 0); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 66; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 < 1 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 1; x7 := 0; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 67; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0); x0 := 2; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 1; x7 := oldX28; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := oldX35; x15 := oldX36; x16 := oldX37; x17 := oldX38; x18 := oldX39; x19 := oldX40; x20 := oldX41; x21 := oldX42; x22 := 3; x23 := 4; TO: 68; ---------------------------------------- (130) T2 Underapproximation (COMPLETE) Added the following guard statements: Transition 1: assume(x1 >= 0); assume(x1 >= 0); Transition 3: assume(x1 <= 0); Transition 10: assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); assume(x1 <= 0); ---------------------------------------- (131) Obligation: START: 5; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 = 0 && x0 = 0); x0 := 0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 2; x11 := 4; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 2; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x0 > 2 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 4; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(oldX24 > -1); x0 := oldX24 + 1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 3; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := -(x0) - 0; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := -(x0) - 0; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 6; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX30 < x0 && x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := 3; x17 := 4; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 8; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(oldX30 > x0 && x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := 3; x17 := 4; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 8; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 9; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX38 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(x1 - 1 < -1 && x0 > 0 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX0 + 1; x9 := oldX27; x10 := oldX28; x11 := oldX29; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX38 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(x1 - 1 > 0 && x0 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX0 + 1; x9 := oldX27; x10 := oldX28; x11 := oldX29; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 11; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x1 < 2 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX0; x9 := oldX1; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := 2; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 13; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1 && oldX25 > 0); x0 := oldX24 + 1; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 14; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 < -1 && x0 + oldX28 > 1 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 > 0 && x0 + oldX28 > 1 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x1 < 2 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX0; x9 := oldX1; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := 2; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 16; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 17; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 3; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX43 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x1 - 1 > 0 && x1 - 1 < -1 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 18; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX43 := x1 - 1; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 18; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x0 < 2); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := 2; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 19; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 20; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 21; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 < x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 > x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 23; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 24; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1 && oldX25 > 0); x0 := oldX24 + 1; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 25; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x1) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 - x1 + x1 = 0 && 0 - x1 > 0 && x1 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := -(oldX1) - 0; x7 := oldX28; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := 3; x12 := 0; x13 := 4; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 26; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x0 - x1 + x1 > -1 && x0 - x1 + x1 < 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 1; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 10; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 < 1 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 27; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(x1 > 1 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 28; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX28 > 0 && oldX27 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX24 + 3; x8 := oldX25 + 3; x9 := oldX26 + 3; x10 := oldX27 + 3; x11 := oldX28 + 3; x12 := 3; x13 := 4; x14 := oldX29; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 29; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := 3; x16 := 4; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 30; FROM: 31; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(0 = 0 && x0 = 2); x0 := 2; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := oldX27; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := oldX36; x17 := oldX37; x18 := oldX38; x19 := oldX39; x20 := oldX40; x21 := oldX41; x22 := 3; x23 := 4; TO: 32; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x0 < 0); x0 := 0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 2; x11 := 4; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 33; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 > 0); x0 := x1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 12; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 < 0 && x0 - x1 + x1 > -1 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX0 - oldX1; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; x1 := x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX0 - oldX1; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := 0; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 1; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := 3; x10 := 2; x11 := 4; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 35; FROM: 15; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(x1 > 1 && x0 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 36; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 37; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x0 > 2 && x1 < 2); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := oldX27; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := oldX34; x15 := oldX35; x16 := oldX36; x17 := oldX37; x18 := oldX38; x19 := oldX39; x20 := oldX40; x21 := oldX41; x22 := 3; x23 := 4; TO: 38; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX29 > -1 && oldX30 > 0 && oldX32 < 1 + oldX29); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX24 + 3; x12 := oldX25 + 3; x13 := oldX26 + 3; x14 := oldX27 + 3; x15 := oldX28 + 3; x16 := 3; x17 := 4; x18 := 2; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 22; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX29 > -1 && oldX30 > 0 && oldX32 > 1 + oldX29); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX24 + 3; x12 := oldX25 + 3; x13 := oldX26 + 3; x14 := oldX27 + 3; x15 := oldX28 + 3; x16 := 3; x17 := 4; x18 := 2; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 22; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 39; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 - 1 > 0 && x1 - 1 < -1 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 40; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 < 0); x0 := x0; x1 := -1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := 1; x7 := 1; x8 := oldX27; x9 := oldX28; x10 := oldX29; x11 := 3; x12 := 0; x13 := 4; x14 := oldX30; x15 := oldX31; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 26; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(0 = 0); x0 := x0; x1 := 2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := 1; x8 := oldX27; x9 := oldX28; x10 := oldX29; x11 := 3; x12 := 2; x13 := 4; x14 := oldX30; x15 := oldX31; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 41; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 < 1 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := 2; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 42; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX30; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 43; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX28 > 0 && oldX30 > 0 && oldX29 > -1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29 + 1; x6 := 0; x7 := 1; x8 := oldX30; x9 := oldX31; x10 := oldX24 + 3; x11 := oldX25 + 3; x12 := oldX26 + 3; x13 := oldX27 + 3; x14 := oldX28 + 3; x15 := 3; x16 := 4; x17 := 2; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 44; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 = 0); x0 := x0; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 1; x7 := oldX1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 41; FROM: 45; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 1; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 < 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 46; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 47; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > -1); x0 := oldX24 + 1; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 7; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 < x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(x3 > x0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX2; x10 := oldX3; x11 := oldX29; x12 := oldX30; x13 := oldX31; x14 := oldX32; x15 := oldX33; x16 := 3; x17 := 4; x18 := 2; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 22; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0 && x0 = 1 && x1 = 0); x0 := 1; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := 3; x21 := 4; x22 := oldX42; x23 := oldX43; TO: 48; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 49; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x1 < 0); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 50; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0); x0 := 1; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := 3; x21 := 4; x22 := oldX42; x23 := oldX43; TO: 51; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 52; FROM: 25; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0 && x0 = x3); x0 := x1; x1 := x2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 15; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 53; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 54; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(x1 > 0); x0 := x1; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 < 0 && x0 - x1 + x1 > -1 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; assume(x1 >= 0); assume(x1 >= 0); x1 := oldX24 + x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 0; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x0 - x1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(x0 - x1 + x1 > 0 && x0 = x0 - x1 + x1); x0 := x0 - x1 + x1; assume(x1 >= 0); assume(x1 >= 0); x1 := oldX24 + x1; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 0; x7 := 1; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 34; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0 && x1 = 1); x0 := x0; x1 := 1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 55; FROM: 12; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 < 2); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 56; FROM: 7; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); assume(x1 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX0; x6 := 0; x7 := 1; x8 := oldX1; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := oldX32; x13 := oldX33; x14 := 3; x15 := 4; x16 := oldX34; x17 := oldX35; x18 := oldX36; x19 := oldX37; x20 := oldX38; x21 := oldX39; x22 := oldX40; x23 := oldX41; TO: 57; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); oldX47 := nondet(); assume(oldX24 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := oldX30; x7 := oldX31; x8 := oldX32; x9 := oldX33; x10 := oldX34; x11 := oldX35; x12 := oldX36; x13 := oldX37; x14 := oldX38; x15 := oldX39; x16 := oldX40; x17 := oldX41; x18 := oldX42; x19 := oldX43; x20 := oldX44; x21 := oldX45; x22 := oldX46; x23 := oldX47; TO: 15; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 58; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 < -1 && x0 + oldX28 > 2 && x1 - 1 > 0 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := x1 - 1; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); assume(x1 - 1 > 0 && x0 + oldX28 > 2 && x1 = 1 + (x1 - 1)); x0 := x0; assume(x1 <= 0); assume(x1 <= 0); x1 := x1 - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := oldX1 - 1; x7 := oldX28; x8 := oldX0 + oldX28; x9 := oldX29; x10 := oldX30; x11 := oldX31; x12 := 3; x13 := 1; x14 := 2; x15 := 4; x16 := oldX32; x17 := oldX33; x18 := oldX34; x19 := oldX35; x20 := oldX36; x21 := oldX37; x22 := oldX38; x23 := oldX39; TO: 11; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 59; FROM: 1; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX27 := -(x0) - 0; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); assume(0 - x0 + x0 = 0 && 0 - x0 > 0 && x0 < 0); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 0; x6 := 1; x7 := -(oldX0) - 0; x8 := oldX28; x9 := oldX29; x10 := oldX30; x11 := 3; x12 := 2; x13 := 4; x14 := oldX31; x15 := oldX32; x16 := oldX33; x17 := oldX34; x18 := oldX35; x19 := oldX36; x20 := oldX37; x21 := oldX38; x22 := oldX39; x23 := oldX40; TO: 60; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); assume(0 = 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := 3; x23 := 4; TO: 61; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX25 > 0 && oldX29 > 1 && oldX24 > 0 && oldX26 > 0 && oldX28 > 0 && oldX27 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := 2; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 62; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 1; x6 := 0; x7 := oldX29; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 63; FROM: 14; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(0 = 0 && x0 = x3); x0 := x1; x1 := x2; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 15; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := -(x1) - 0; oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); oldX46 := nondet(); assume(0 - x1 + x1 = 0 && 0 - x1 > 0 && x1 < 0); x0 := x0; x1 := -(x1) - 0; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := oldX28; x6 := oldX29; x7 := oldX30; x8 := oldX31; x9 := oldX32; x10 := oldX33; x11 := oldX34; x12 := oldX35; x13 := oldX36; x14 := oldX37; x15 := oldX38; x16 := oldX39; x17 := oldX40; x18 := oldX41; x19 := oldX42; x20 := oldX43; x21 := oldX44; x22 := oldX45; x23 := oldX46; TO: 10; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); oldX43 := nondet(); oldX44 := nondet(); oldX45 := nondet(); assume(x0 > 2 && x1 > 1); x0 := x0; x1 := x1; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := oldX27; x6 := oldX28; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := oldX33; x12 := oldX34; x13 := oldX35; x14 := oldX36; x15 := oldX37; x16 := oldX38; x17 := oldX39; x18 := oldX40; x19 := oldX41; x20 := oldX42; x21 := oldX43; x22 := oldX44; x23 := oldX45; TO: 1; FROM: 3; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(x0 > 2 && x1 > 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 0; x6 := 1; x7 := oldX29; x8 := oldX30; x9 := oldX31; x10 := oldX32; x11 := 3; x12 := 2; x13 := 4; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 64; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 > 0 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 2; x6 := 0; x7 := 1; x8 := oldX29; x9 := oldX24 + 3; x10 := oldX25 + 3; x11 := oldX26 + 3; x12 := oldX27 + 3; x13 := oldX28 + 3; x14 := 3; x15 := 4; x16 := oldX30; x17 := oldX31; x18 := oldX32; x19 := oldX33; x20 := oldX34; x21 := oldX35; x22 := oldX36; x23 := oldX37; TO: 65; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 1); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := 2; x6 := 0; x7 := 1; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := 3; x15 := 4; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 65; FROM: 10; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0 && x1 = 0); x0 := x0; x1 := 0; x2 := oldX24; x3 := oldX25; x4 := oldX26; x5 := 1; x6 := oldX27; x7 := oldX28; x8 := oldX29; x9 := 3; x10 := 4; x11 := oldX30; x12 := oldX31; x13 := oldX32; x14 := oldX33; x15 := oldX34; x16 := oldX35; x17 := oldX36; x18 := oldX37; x19 := oldX38; x20 := oldX39; x21 := oldX40; x22 := oldX41; x23 := oldX42; TO: 66; FROM: 5; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); assume(oldX24 > 0 && oldX25 > 0 && oldX26 > 0 && oldX27 > 0 && oldX29 < 1 && oldX28 > 0); x0 := oldX24; x1 := oldX25; x2 := oldX26; x3 := oldX27; x4 := oldX28; x5 := oldX29; x6 := 1; x7 := 0; x8 := oldX24 + 3; x9 := oldX25 + 3; x10 := oldX26 + 3; x11 := oldX27 + 3; x12 := oldX28 + 3; x13 := 3; x14 := 4; x15 := oldX30; x16 := oldX31; x17 := oldX32; x18 := oldX33; x19 := oldX34; x20 := oldX35; x21 := oldX36; x22 := oldX37; x23 := oldX38; TO: 67; FROM: 4; oldX0 := x0; oldX1 := x1; oldX2 := x2; oldX3 := x3; oldX4 := x4; oldX5 := x5; oldX6 := x6; oldX7 := x7; oldX8 := x8; oldX9 := x9; oldX10 := x10; oldX11 := x11; oldX12 := x12; oldX13 := x13; oldX14 := x14; oldX15 := x15; oldX16 := x16; oldX17 := x17; oldX18 := x18; oldX19 := x19; oldX20 := x20; oldX21 := x21; oldX22 := x22; oldX23 := x23; oldX24 := nondet(); oldX25 := nondet(); oldX26 := nondet(); oldX27 := nondet(); oldX28 := nondet(); oldX29 := nondet(); oldX30 := nondet(); oldX31 := nondet(); oldX32 := nondet(); oldX33 := nondet(); oldX34 := nondet(); oldX35 := nondet(); oldX36 := nondet(); oldX37 := nondet(); oldX38 := nondet(); oldX39 := nondet(); oldX40 := nondet(); oldX41 := nondet(); oldX42 := nondet(); assume(0 = 0); x0 := 2; x1 := oldX24; x2 := oldX25; x3 := oldX26; x4 := oldX27; x5 := 0; x6 := 1; x7 := oldX28; x8 := oldX29; x9 := oldX30; x10 := oldX31; x11 := oldX32; x12 := oldX33; x13 := oldX34; x14 := oldX35; x15 := oldX36; x16 := oldX37; x17 := oldX38; x18 := oldX39; x19 := oldX40; x20 := oldX41; x21 := oldX42; x22 := 3; x23 := 4; TO: 68;