42.90/11.72 NO 42.90/11.73 proof of /export/starexec/sandbox/benchmark/theBenchmark.c 42.90/11.73 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 42.90/11.73 42.90/11.73 42.90/11.73 Termination of the given C Problem could be disproven: 42.90/11.73 42.90/11.73 (0) C Problem 42.90/11.73 (1) CToLLVMProof [EQUIVALENT, 171 ms] 42.90/11.73 (2) LLVM problem 42.90/11.73 (3) LLVMToTerminationGraphProof [EQUIVALENT, 3399 ms] 42.90/11.73 (4) LLVM Symbolic Execution Graph 42.90/11.73 (5) SEGraph to IRS [EQUIVALENT, 211 ms] 42.90/11.73 (6) IntTRS 42.90/11.73 (7) IRS2T2 [EQUIVALENT, 1 ms] 42.90/11.73 (8) T2IntSys 42.90/11.73 (9) T2 [COMPLETE, 1493 ms] 42.90/11.73 (10) NO 42.90/11.73 42.90/11.73 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (0) 42.90/11.73 Obligation: 42.90/11.73 c file /export/starexec/sandbox/benchmark/theBenchmark.c 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (1) CToLLVMProof (EQUIVALENT) 42.90/11.73 Compiled c-file /export/starexec/sandbox/benchmark/theBenchmark.c to LLVM. 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (2) 42.90/11.73 Obligation: 42.90/11.73 LLVM Problem 42.90/11.73 42.90/11.73 Aliases: 42.90/11.73 42.90/11.73 Data layout: 42.90/11.73 42.90/11.73 "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" 42.90/11.73 42.90/11.73 Machine: 42.90/11.73 42.90/11.73 "x86_64-pc-linux-gnu" 42.90/11.73 42.90/11.73 Type definitions: 42.90/11.73 42.90/11.73 Global variables: 42.90/11.73 42.90/11.73 Function declarations and definitions: 42.90/11.73 42.90/11.73 *BasicFunctionTypename: "__VERIFIER_nondet_int" returnParam: i32 parameters: () variableLength: false visibilityType: DEFAULT callingConvention: ccc 42.90/11.73 *BasicFunctionTypename: "main" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: () variableLength: false visibilityType: DEFAULT callingConvention: ccc 42.90/11.73 0: 42.90/11.73 %1 = alloca i32, align 4 42.90/11.73 %x = alloca i32, align 4 42.90/11.73 %y = alloca i32, align 4 42.90/11.73 %z = alloca i32, align 4 42.90/11.73 %res = alloca i32, align 4 42.90/11.73 store 0, %1 42.90/11.73 %2 = call i32 @__VERIFIER_nondet_int() 42.90/11.73 store %2, %x 42.90/11.73 %3 = call i32 @__VERIFIER_nondet_int() 42.90/11.73 store %3, %y 42.90/11.73 %4 = load %y 42.90/11.73 store %4, %z 42.90/11.73 store 0, %res 42.90/11.73 br %5 42.90/11.73 5: 42.90/11.73 %6 = load %z 42.90/11.73 %7 = icmp sgt %6 0 42.90/11.73 br %7, %8, %21 42.90/11.73 8: 42.90/11.73 %9 = load %y 42.90/11.73 %10 = icmp eq %9 0 42.90/11.73 br %10, %19, %11 42.90/11.73 11: 42.90/11.73 %12 = load %y 42.90/11.73 %13 = icmp sgt %12 0 42.90/11.73 br %13, %14, %17 42.90/11.73 14: 42.90/11.73 %15 = load %x 42.90/11.73 %16 = icmp sgt %15 0 42.90/11.73 br %17 42.90/11.73 17: 42.90/11.73 %18 = phi [0, %11], [%16, %14] 42.90/11.73 br %19 42.90/11.73 19: 42.90/11.73 %20 = phi [1, %8], [%18, %17] 42.90/11.73 br %21 42.90/11.73 21: 42.90/11.73 %22 = phi [0, %5], [%20, %19] 42.90/11.73 br %22, %23, %36 42.90/11.73 23: 42.90/11.73 %24 = load %y 42.90/11.73 %25 = icmp eq %24 0 42.90/11.73 br %25, %26, %30 42.90/11.73 26: 42.90/11.73 %27 = load %res 42.90/11.73 %28 = add %27 1 42.90/11.73 store %28, %res 42.90/11.73 %29 = load %z 42.90/11.73 store %29, %y 42.90/11.73 br %35 42.90/11.73 30: 42.90/11.73 %31 = load %x 42.90/11.73 %32 = add %31 1 42.90/11.73 store %32, %x 42.90/11.73 %33 = load %y 42.90/11.73 %34 = sub %33 1 42.90/11.73 store %34, %y 42.90/11.73 br %35 42.90/11.73 35: 42.90/11.73 br %5 42.90/11.73 36: 42.90/11.73 ret 0 42.90/11.73 42.90/11.73 42.90/11.73 Analyze Termination of all function calls matching the pattern: 42.90/11.73 main() 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (3) LLVMToTerminationGraphProof (EQUIVALENT) 42.90/11.73 Constructed symbolic execution graph for LLVM program and proved memory safety. 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (4) 42.90/11.73 Obligation: 42.90/11.73 SE Graph 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (5) SEGraph to IRS (EQUIVALENT) 42.90/11.73 Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: 42.90/11.73 Generated rules. Obtained 165 rulesP rules: 42.90/11.73 f_153 -> f_154(v1, v2, 3, 1, 4) :|: 1 <= v1 && v2 = 3 + v1 && 4 <= v2 42.90/11.73 f_154(v1, v2, 3, 1, 4) -> f_155(v1, v3, v2, v4, 3, 1, 4) :|: 1 <= v3 && v4 = 3 + v3 && 4 <= v4 42.90/11.73 f_155(v1, v3, v2, v4, 3, 1, 4) -> f_156(v1, v3, v5, v2, v4, v6, 3, 1, 4) :|: 1 <= v5 && v6 = 3 + v5 && 4 <= v6 42.90/11.73 f_156(v1, v3, v5, v2, v4, v6, 3, 1, 4) -> f_157(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) :|: 1 <= v7 && v8 = 3 + v7 && 4 <= v8 42.90/11.73 f_157(v1, v3, v5, v7, v2, v4, v6, v8, 3, 1, 4) -> f_158(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) :|: 1 <= v9 && v10 = 3 + v9 && 4 <= v10 42.90/11.73 f_158(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 3, 1, 4) -> f_159(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_159(v1, v3, v5, v7, v9, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_160(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_160(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_161(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_161(v1, v3, v5, v7, v9, v11, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_162(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_162(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_163(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_163(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_164(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 42.90/11.73 f_164(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_165(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_165(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_166(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_166(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_167(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: TRUE 42.90/11.73 f_167(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_168(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 = 0 42.90/11.73 f_168(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_169(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: 0 < v13 42.90/11.73 f_168(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_170(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) :|: v13 <= 0 42.90/11.73 f_169(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_171(v1, v3, v5, v7, v9, v11, v13, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: 0 = 0 42.90/11.73 f_170(v1, v3, v5, v7, v9, v11, v13, v2, v4, v6, v8, v10, 0, 3, 1, 4) -> f_172(v1, v3, v5, v7, v9, v11, v13, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 42.90/11.73 f_171(v1, v3, v5, v7, v9, v11, v13, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_173(v1, v3, v5, v7, v9, v11, v13, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: TRUE 42.90/11.73 f_172(v1, v3, v5, v7, v9, v11, v13, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_174(v1, v3, v5, v7, v9, v11, v13, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: 0 = 0 42.90/11.73 f_173(v1, v3, v5, v7, v9, v11, v13, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_175(v1, v3, v5, v7, v9, v11, v13, 1, v2, v4, v6, v8, v10, 0, 3, 4) :|: 0 = 0 42.90/11.73 f_174(v1, v3, v5, v7, v9, v11, v13, 0, v2, v4, v6, v8, v10, 3, 1, 4) -> f_176(v1, v3, v5, v7, v9, v11, v13, 0, v2, v4, v6, v8, v10, 3, 1, 4) :|: TRUE 42.90/11.73 f_175(v1, v3, v5, v7, v9, v11, v13, 1, v2, v4, v6, v8, v10, 0, 3, 4) -> f_177(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_177(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_178(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE 42.90/11.73 f_178(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_179(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_179(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_180(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_180(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_181(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE 42.90/11.73 f_181(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_182(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_182(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_183(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 < v11 42.90/11.73 f_182(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_184(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: v11 <= 0 42.90/11.73 f_183(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_185(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_184(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_186(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_185(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_187(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_186(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_188(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_187(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_189(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_188(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_190(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_189(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_191(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_190(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_192(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_191(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_193(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE 42.90/11.73 f_192(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_194(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE 42.90/11.73 f_193(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_195(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_195(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_196(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_196(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_197(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: TRUE 42.90/11.73 f_197(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_198(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) :|: 0 = 0 42.90/11.73 f_198(v1, v3, v5, v7, v9, v11, v13, 1, 0, v2, v4, v6, v8, v10, 3, 4) -> f_199(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v2, v4, v6, v8, v10, 3, 4, 2) :|: v21 = 1 + v11 && 2 <= v21 42.90/11.73 f_199(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v2, v4, v6, v8, v10, 3, 4, 2) -> f_200(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE 42.90/11.73 f_200(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v2, v4, v6, v8, v10, 3, 4, 2) -> f_201(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v2, v4, v6, v8, v10, 3, 4, 2) :|: 0 = 0 42.90/11.73 f_201(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v2, v4, v6, v8, v10, 3, 4, 2) -> f_202(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) :|: 1 + v23 = v13 && 0 <= v23 42.90/11.73 f_202(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) -> f_203(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE 42.90/11.73 f_203(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) -> f_204(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE 42.90/11.73 f_204(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) -> f_205(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) :|: TRUE 42.90/11.73 f_205(v1, v3, v5, v7, v9, v11, v13, 1, 0, v21, v23, v2, v4, v6, v8, v10, 3, 4, 2) -> f_256(v1, v3, v5, v7, v9, v11, v13, 1, v13, 0, v11, v21, v23, v2, v4, v6, v8, v10, 3, 2, 4) :|: TRUE 42.90/11.73 f_256(v135, v136, v137, v138, v139, v140, v141, 1, v143, 0, v145, v146, v147, v148, v149, v150, v151, v152, 3, 2, 4) -> f_307(v135, v136, v137, v138, v139, v140, v141, 1, v143, 0, v145, v146, v147, v148, v149, v150, v151, v152, 3, 2, 4) :|: TRUE 42.90/11.73 f_307(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) -> f_308(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_308(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) -> f_309(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_309(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) -> f_310(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_310(v257, v258, v259, v260, v261, v262, v263, 1, v265, 0, v267, v268, v269, v270, v271, v272, v273, v274, 3, 2, 4) -> f_311(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_311(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_312(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: v269 = 0 42.90/11.73 f_311(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_313(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: v269 != 0 && 2 <= v265 && 2 <= v263 42.90/11.73 f_312(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_314(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_313(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_315(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_314(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_316(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_315(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_317(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_316(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_318(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_317(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v265, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_319(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v267, v265, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_318(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_320(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_319(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v267, v265, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_321(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v267, v265, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_320(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_322(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_321(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v267, v265, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_323(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v267, v265, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_322(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_324(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_323(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v267, v265, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_325(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_324(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_326(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_325(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) -> f_327(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_326(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_328(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_327(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) -> f_329(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_328(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_330(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_329(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) -> f_331(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_330(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_332(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_331(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) -> f_333(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_332(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_334(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_333(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) -> f_335(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_334(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_336(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_335(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v267, v270, v271, v272, v273, v274, 3, 2, 4) -> f_337(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v267, v265, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_336(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_338(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_337(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v267, v265, v270, v271, v272, v273, v274, 3, 2, 4) -> f_339(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v267, v265, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_338(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, v270, v271, v272, v273, v274, 3, 2, 4) -> f_407(v257, v258, v259, v260, v261, v262, v263, 1, 0, v267, v268, 0, 1, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_339(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v267, v265, v270, v271, v272, v273, v274, 3, 2, 4) -> f_341(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v267, v265, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_341(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v267, v265, v270, v271, v272, v273, v274, 3, 2, 4) -> f_343(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_343(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v265, v270, v271, v272, v273, v274, 3, 2, 4) -> f_345(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v265, v270, v271, v272, v273, v274, 3, 2, 4) :|: v360 = 1 + v268 && 3 <= v360 42.90/11.73 f_345(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v265, v270, v271, v272, v273, v274, 3, 2, 4) -> f_347(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v265, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_347(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v265, v270, v271, v272, v273, v274, 3, 2, 4) -> f_349(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v270, v271, v272, v273, v274, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_349(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v270, v271, v272, v273, v274, 3, 2, 4) -> f_351(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) :|: 1 + v371 = v269 && 0 <= v371 42.90/11.73 f_351(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) -> f_353(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_353(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) -> f_355(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_355(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) -> f_357(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_357(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) -> f_307(v257, v258, v259, v260, v261, v262, v263, 1, v269, 0, v268, v360, v371, v270, v271, v272, v273, v274, 3, 2, 4) :|: TRUE 42.90/11.73 f_407(v998, v999, v1000, v1001, v1002, v1003, v1004, 1, 0, v1007, v1008, v1009, v1010, v1011, v1012, v1013, v1014, v1015, 3, 2, 4) -> f_466(v998, v999, v1000, v1001, v1002, v1003, v1004, 1, 0, v1007, v1008, v1009, v1010, v1011, v1012, v1013, v1014, v1015, 3, 2, 4) :|: TRUE 42.90/11.73 f_466(v1596, v1597, v1598, v1599, v1600, v1601, v1602, 1, 0, v1605, v1606, v1607, v1608, v1609, v1610, v1611, v1612, v1613, 3, 2, 4) -> f_525(v1596, v1597, v1598, v1599, v1600, v1601, v1602, 1, 0, v1605, v1606, v1607, v1608, v1609, v1610, v1611, v1612, v1613, 3, 2, 4) :|: TRUE 42.90/11.73 f_525(v2185, v2186, v2187, v2188, v2189, v2190, v2191, 1, 0, v2194, v2195, v2196, v2197, v2198, v2199, v2200, v2201, v2202, 3, 2, 4) -> f_584(v2185, v2186, v2187, v2188, v2189, v2190, v2191, 1, 0, v2194, v2195, v2196, v2197, v2198, v2199, v2200, v2201, v2202, 3, 2, 4) :|: TRUE 42.90/11.73 f_584(v2774, v2775, v2776, v2777, v2778, v2779, v2780, 1, 0, v2783, v2784, v2785, v2786, v2787, v2788, v2789, v2790, v2791, 3, 2, 4) -> f_643(v2774, v2775, v2776, v2777, v2778, v2779, v2780, 1, 0, v2783, v2784, v2785, v2786, v2787, v2788, v2789, v2790, v2791, 3, 2, 4) :|: TRUE 42.90/11.73 f_643(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_644(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_644(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_645(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_645(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_646(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_646(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_647(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_647(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_648(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, v3372, 0, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_648(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, v3372, 0, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_649(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_649(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_650(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_650(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_651(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_651(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_652(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_652(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_653(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_653(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3372, v3373, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_654(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_654(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_655(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_655(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_656(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_656(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_657(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_657(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_658(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_658(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_659(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_659(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_660(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_660(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_661(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_661(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_662(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_662(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, 0, v3373, v3372, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) -> f_704(v3363, v3364, v3365, v3366, v3367, v3368, v3369, 1, v3369, 0, v3373, v3372, 1, 0, v3374, v3375, v3376, v3377, v3378, v3379, v3380, 3, 2, 4) :|: TRUE 42.90/11.73 f_704(v3991, v3992, v3993, v3994, v3995, v3996, v3997, 1, v3999, 0, v4001, v4002, v4003, v4004, v4005, v4006, v4007, v4008, v4009, v4010, v4011, 3, 2, 4) -> f_746(v3991, v3992, v3993, v3994, v3995, v3996, v3997, 1, v3999, 0, v4001, v4002, v4003, v4004, v4005, v4006, v4007, v4008, v4009, v4010, v4011, 3, 2, 4) :|: TRUE 42.90/11.73 f_746(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4400, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_747(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_747(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_748(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: v4410 = 1 + v4399 && 3 <= v4410 42.90/11.73 f_748(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_749(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_749(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4401, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_750(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_750(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4402, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_751(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 1 + v4412 = v4397 && 0 <= v4412 42.90/11.73 f_751(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_752(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_752(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_753(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_753(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_754(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_754(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_755(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_755(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_756(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_756(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_757(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_757(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4397, 0, v4399, v4410, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_758(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_758(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_759(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: v4412 = 0 42.90/11.73 f_758(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_760(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: v4412 != 0 && 2 <= v4397 42.90/11.73 f_759(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_761(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_760(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_762(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_761(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_763(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_762(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_764(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_763(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_765(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_764(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4397, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_766(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4399, v4397, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_765(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_767(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_766(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4399, v4397, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_768(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4399, v4397, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_767(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_769(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_768(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4399, v4397, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_770(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4399, v4397, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_769(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_771(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_770(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4399, v4397, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_772(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_771(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_773(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_772(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_774(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_773(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_775(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_774(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_776(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_775(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_777(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: v4624 = 1 + v4404 && 2 <= v4624 42.90/11.73 f_776(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_778(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_777(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_779(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_778(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_780(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_779(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_781(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_780(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_782(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_781(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_783(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_782(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4397, v4399, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_784(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_783(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_785(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_784(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_786(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: 0 = 0 42.90/11.73 f_785(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_643(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, 0, v4399, v4410, v4404, v4624, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_786(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_787(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 f_787(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) -> f_746(v4389, v4390, v4391, v4392, v4393, v4394, v4395, 1, v4412, 0, v4410, v4399, v4397, v4412, v4403, v4404, v4405, v4406, v4407, v4408, v4409, 3, 2, 4) :|: TRUE 42.90/11.73 Combined rules. Obtained 7 rulesP rules: 42.90/11.73 f_758(v4389:0, v4390:0, v4391:0, v4392:0, v4393:0, v4394:0, 1 + v4412:1, 1, 0, 0, v4397:0, v4399:0, v4410:0, v4403:0, v4404:0, v4405:0, v4406:0, v4407:0, v4408:0, v4409:0, 3, 2, 4) -> f_758(v4389:0, v4390:0, v4391:0, v4392:0, v4393:0, v4394:0, 1 + v4412:1, 1, v4412:1, 0, 1 + v4412:1, v4410:0, 1 + v4410:0, v4404:0, 1 + v4404:0, v4405:0, v4406:0, v4407:0, v4408:0, v4409:0, 3, 2, 4) :|: v4410:0 > 1 && v4404:0 > 0 && v4412:1 > -1 42.90/11.73 f_153 -> f_311(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, 1 + v23:0, 1, v23:0, 0, 1 + v23:0, v11:0, 1 + v11:0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 2, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v23:0 > -1 && v11:0 > 0 42.90/11.73 f_311(v257:0, v258:0, v259:0, v260:0, v261:0, v262:0, v263:0, 1, 1 + v371:0, 0, v265:0, v267:0, v268:0, v270:0, v271:0, v272:0, v273:0, v274:0, 3, 2, 4) -> f_311(v257:0, v258:0, v259:0, v260:0, v261:0, v262:0, v263:0, 1, v371:0, 0, 1 + v371:0, v268:0, 1 + v268:0, v270:0, v271:0, v272:0, v273:0, v274:0, 3, 2, 4) :|: v265:0 > 1 && v371:0 > -1 && v263:0 > 1 && v268:0 > 1 42.90/11.73 f_153 -> f_176(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13:0, 0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 1, 4) :|: v3:0 > 0 && v1:0 > 0 && v5:0 > 0 && v7:0 > 0 && v9:0 > 0 && v13:0 < 1 42.90/11.73 f_153 -> f_194(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13: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 && v13:0 > 0 42.90/11.73 f_311(v257:0, v258:0, v259:0, v260:0, v261:0, v262:0, 1 + v4412:0, 1, 0, 0, v265:0, v267:0, v268:0, v270:0, v271:0, v272:0, v273:0, v274:0, 3, 2, 4) -> f_758(v257:0, v258:0, v259:0, v260:0, v261:0, v262:0, 1 + v4412:0, 1, v4412:0, 0, 1 + v4412:0, v268:0, 1 + v268:0, 0, 1, v270:0, v271:0, v272:0, v273:0, v274:0, 3, 2, 4) :|: v4412:0 > -1 && v268:0 > 1 42.90/11.73 f_758(v4389:0, v4390:0, v4391:0, v4392:0, v4393:0, v4394:0, v4395:0, 1, 1 + v4412:1, 0, v4397:0, v4399:0, v4410:0, v4403:0, v4404:0, v4405:0, v4406:0, v4407:0, v4408:0, v4409:0, 3, 2, 4) -> f_758(v4389:0, v4390:0, v4391:0, v4392:0, v4393:0, v4394:0, v4395:0, 1, v4412:1, 0, 1 + v4412:1, v4410:0, 1 + v4410:0, v4403:0, v4404:0, v4405:0, v4406:0, v4407:0, v4408:0, v4409:0, 3, 2, 4) :|: v4397:0 > 1 && v4412:1 > -1 && v4410:0 > 1 42.90/11.73 Filtered unneeded arguments: 42.90/11.73 f_758(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23) -> f_758(x7, x9, x11, x13, x15) 42.90/11.73 f_311(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21) -> f_311(x7, x9, x11, x13) 42.90/11.73 Removed division, modulo operations, cleaned up constraints. Obtained 7 rules.P rules: 42.90/11.73 f_758(sum~cons_1~v4412:1, cons_0, v4397:0, v4410:0, v4404:0) -> f_758(1 + v4412:1, v4412:1, 1 + v4412:1, 1 + v4410:0, 1 + v4404:0) :|: v4404:0 > 0 && v4412:1 > -1 && v4410:0 > 1 && sum~cons_1~v4412:1 = 1 + v4412:1 && cons_0 = 0 42.90/11.73 f_153 -> f_311(1 + v23:0, v23:0, 1 + v23:0, 1 + v11:0) :|: v23:0 > -1 && v11:0 > 0 42.90/11.73 f_311(v263:0, sum~cons_1~v371:0, v265:0, v268:0) -> f_311(v263:0, v371:0, 1 + v371:0, 1 + v268:0) :|: v371:0 > -1 && v265:0 > 1 && v268:0 > 1 && v263:0 > 1 && sum~cons_1~v371:0 = 1 + v371:0 42.90/11.73 f_153 -> f_176(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13:0, 0, 3 + v1:0, 3 + v3:0, 3 + v5:0, 3 + v7:0, 3 + v9:0, 3, 1, 4) :|: v1:0 > 0 && v3:0 > 0 && v5:0 > 0 && v7:0 > 0 && v13:0 < 1 && v9:0 > 0 42.90/11.73 f_153 -> f_194(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13: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 && v9:0 > 0 && v13:0 > 0 && v11:0 < 1 42.90/11.73 f_311(sum~cons_1~v4412:0, cons_0, v265:0, v268:0) -> f_758(1 + v4412:0, v4412:0, 1 + v4412:0, 1 + v268:0, 1) :|: v4412:0 > -1 && v268:0 > 1 && sum~cons_1~v4412:0 = 1 + v4412:0 && cons_0 = 0 42.90/11.73 f_758(v4395:0, sum~cons_1~v4412:1, v4397:0, v4410:0, v4404:0) -> f_758(v4395:0, v4412:1, 1 + v4412:1, 1 + v4410:0, v4404:0) :|: v4412:1 > -1 && v4410:0 > 1 && v4397:0 > 1 && sum~cons_1~v4412:1 = 1 + v4412:1 42.90/11.73 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (6) 42.90/11.73 Obligation: 42.90/11.73 Rules: 42.90/11.73 f_758(sum~cons_1~v4412:1, cons_0, v4397:0, v4410:0, v4404:0) -> f_758(1 + v4412:1, v4412:1, 1 + v4412:1, 1 + v4410:0, 1 + v4404:0) :|: v4404:0 > 0 && v4412:1 > -1 && v4410:0 > 1 && sum~cons_1~v4412:1 = 1 + v4412:1 && cons_0 = 0 42.90/11.73 f_153 -> f_311(1 + v23:0, v23:0, 1 + v23:0, 1 + v11:0) :|: v23:0 > -1 && v11:0 > 0 42.90/11.73 f_311(v263:0, sum~cons_1~v371:0, v265:0, v268:0) -> f_311(v263:0, v371:0, 1 + v371:0, 1 + v268:0) :|: v371:0 > -1 && v265:0 > 1 && v268:0 > 1 && v263:0 > 1 && sum~cons_1~v371:0 = 1 + v371:0 42.90/11.73 f_153 -> f_176(x, x1, x2, x3, x4, x5, x6, 0, 3 + x, 3 + x1, 3 + x2, 3 + x3, 3 + x4, 3, 1, 4) :|: x > 0 && x1 > 0 && x2 > 0 && x3 > 0 && x6 < 1 && x4 > 0 42.90/11.73 f_153 -> f_194(x7, x8, x9, x10, x11, x12, x13, 1, 0, 3 + x7, 3 + x8, 3 + x9, 3 + x10, 3 + x11, 3, 4) :|: x7 > 0 && x8 > 0 && x9 > 0 && x10 > 0 && x11 > 0 && x13 > 0 && x12 < 1 42.90/11.73 f_311(x14, x15, x16, x17) -> f_758(1 + x18, x18, 1 + x18, 1 + x17, 1) :|: x18 > -1 && x17 > 1 && x14 = 1 + x18 && x15 = 0 42.90/11.73 f_758(x19, x20, x21, x22, x23) -> f_758(x19, x24, 1 + x24, 1 + x22, x23) :|: x24 > -1 && x22 > 1 && x21 > 1 && x20 = 1 + x24 42.90/11.73 Start term: f_153 42.90/11.73 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (7) IRS2T2 (EQUIVALENT) 42.90/11.73 Transformed input IRS into an integer transition system.Used the following mapping from defined symbols to location IDs: 42.90/11.73 42.90/11.73 (f_758_16,1) 42.90/11.73 (f_153_16,2) 42.90/11.73 (f_311_16,3) 42.90/11.73 (f_176_16,4) 42.90/11.73 (f_194_16,5) 42.90/11.73 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (8) 42.90/11.73 Obligation: 42.90/11.73 START: 2; 42.90/11.73 42.90/11.73 FROM: 1; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := oldX0 - 1; 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 oldX23 := nondet(); 42.90/11.73 oldX24 := nondet(); 42.90/11.73 oldX25 := nondet(); 42.90/11.73 oldX26 := nondet(); 42.90/11.73 oldX27 := nondet(); 42.90/11.73 assume(oldX4 > 0 && oldX16 > -1 && oldX3 > 1 && oldX0 = 1 + oldX16 && oldX1 = 0); 42.90/11.73 x0 := 1 + oldX16; 42.90/11.73 x1 := oldX0 - 1; 42.90/11.73 x2 := 1 + oldX16; 42.90/11.73 x3 := 1 + oldX3; 42.90/11.73 x4 := 1 + oldX4; 42.90/11.73 x5 := oldX17; 42.90/11.73 x6 := oldX18; 42.90/11.73 x7 := oldX19; 42.90/11.73 x8 := oldX20; 42.90/11.73 x9 := oldX21; 42.90/11.73 x10 := oldX22; 42.90/11.73 x11 := oldX23; 42.90/11.73 x12 := oldX24; 42.90/11.73 x13 := oldX25; 42.90/11.73 x14 := oldX26; 42.90/11.73 x15 := oldX27; 42.90/11.73 TO: 1; 42.90/11.73 42.90/11.73 FROM: 2; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := nondet(); 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 oldX23 := nondet(); 42.90/11.73 oldX24 := nondet(); 42.90/11.73 oldX25 := nondet(); 42.90/11.73 oldX26 := nondet(); 42.90/11.73 oldX27 := nondet(); 42.90/11.73 oldX28 := nondet(); 42.90/11.73 oldX29 := nondet(); 42.90/11.73 assume(oldX16 > -1 && oldX17 > 0); 42.90/11.73 x0 := 1 + oldX16; 42.90/11.73 x1 := oldX16; 42.90/11.73 x2 := 1 + oldX16; 42.90/11.73 x3 := 1 + oldX17; 42.90/11.73 x4 := oldX18; 42.90/11.73 x5 := oldX19; 42.90/11.73 x6 := oldX20; 42.90/11.73 x7 := oldX21; 42.90/11.73 x8 := oldX22; 42.90/11.73 x9 := oldX23; 42.90/11.73 x10 := oldX24; 42.90/11.73 x11 := oldX25; 42.90/11.73 x12 := oldX26; 42.90/11.73 x13 := oldX27; 42.90/11.73 x14 := oldX28; 42.90/11.73 x15 := oldX29; 42.90/11.73 TO: 3; 42.90/11.73 42.90/11.73 FROM: 3; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := oldX1 - 1; 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 oldX23 := nondet(); 42.90/11.73 oldX24 := nondet(); 42.90/11.73 oldX25 := nondet(); 42.90/11.73 oldX26 := nondet(); 42.90/11.73 oldX27 := nondet(); 42.90/11.73 oldX28 := nondet(); 42.90/11.73 assume(oldX16 > -1 && oldX2 > 1 && oldX3 > 1 && oldX0 > 1 && oldX1 = 1 + oldX16); 42.90/11.73 x0 := oldX0; 42.90/11.73 x1 := oldX1 - 1; 42.90/11.73 x2 := 1 + oldX16; 42.90/11.73 x3 := 1 + oldX3; 42.90/11.73 x4 := oldX17; 42.90/11.73 x5 := oldX18; 42.90/11.73 x6 := oldX19; 42.90/11.73 x7 := oldX20; 42.90/11.73 x8 := oldX21; 42.90/11.73 x9 := oldX22; 42.90/11.73 x10 := oldX23; 42.90/11.73 x11 := oldX24; 42.90/11.73 x12 := oldX25; 42.90/11.73 x13 := oldX26; 42.90/11.73 x14 := oldX27; 42.90/11.73 x15 := oldX28; 42.90/11.73 TO: 3; 42.90/11.73 42.90/11.73 FROM: 2; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := nondet(); 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 assume(oldX16 > 0 && oldX17 > 0 && oldX18 > 0 && oldX19 > 0 && oldX22 < 1 && oldX20 > 0); 42.90/11.73 x0 := oldX16; 42.90/11.73 x1 := oldX17; 42.90/11.73 x2 := oldX18; 42.90/11.73 x3 := oldX19; 42.90/11.73 x4 := oldX20; 42.90/11.73 x5 := oldX21; 42.90/11.73 x6 := oldX22; 42.90/11.73 x7 := 0; 42.90/11.73 x8 := 3 + oldX16; 42.90/11.73 x9 := 3 + oldX17; 42.90/11.73 x10 := 3 + oldX18; 42.90/11.73 x11 := 3 + oldX19; 42.90/11.73 x12 := 3 + oldX20; 42.90/11.73 x13 := 3; 42.90/11.73 x14 := 1; 42.90/11.73 x15 := 4; 42.90/11.73 TO: 4; 42.90/11.73 42.90/11.73 FROM: 2; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := nondet(); 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 assume(oldX16 > 0 && oldX17 > 0 && oldX18 > 0 && oldX19 > 0 && oldX20 > 0 && oldX22 > 0 && oldX21 < 1); 42.90/11.73 x0 := oldX16; 42.90/11.73 x1 := oldX17; 42.90/11.73 x2 := oldX18; 42.90/11.73 x3 := oldX19; 42.90/11.73 x4 := oldX20; 42.90/11.73 x5 := oldX21; 42.90/11.73 x6 := oldX22; 42.90/11.73 x7 := 1; 42.90/11.73 x8 := 0; 42.90/11.73 x9 := 3 + oldX16; 42.90/11.73 x10 := 3 + oldX17; 42.90/11.73 x11 := 3 + oldX18; 42.90/11.73 x12 := 3 + oldX19; 42.90/11.73 x13 := 3 + oldX20; 42.90/11.73 x14 := 3; 42.90/11.73 x15 := 4; 42.90/11.73 TO: 5; 42.90/11.73 42.90/11.73 FROM: 3; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := oldX0 - 1; 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 oldX23 := nondet(); 42.90/11.73 oldX24 := nondet(); 42.90/11.73 oldX25 := nondet(); 42.90/11.73 oldX26 := nondet(); 42.90/11.73 oldX27 := nondet(); 42.90/11.73 assume(oldX16 > -1 && oldX3 > 1 && oldX0 = 1 + oldX16 && oldX1 = 0); 42.90/11.73 x0 := 1 + oldX16; 42.90/11.73 x1 := oldX0 - 1; 42.90/11.73 x2 := 1 + oldX16; 42.90/11.73 x3 := 1 + oldX3; 42.90/11.73 x4 := 1; 42.90/11.73 x5 := oldX17; 42.90/11.73 x6 := oldX18; 42.90/11.73 x7 := oldX19; 42.90/11.73 x8 := oldX20; 42.90/11.73 x9 := oldX21; 42.90/11.73 x10 := oldX22; 42.90/11.73 x11 := oldX23; 42.90/11.73 x12 := oldX24; 42.90/11.73 x13 := oldX25; 42.90/11.73 x14 := oldX26; 42.90/11.73 x15 := oldX27; 42.90/11.73 TO: 1; 42.90/11.73 42.90/11.73 FROM: 1; 42.90/11.73 oldX0 := x0; 42.90/11.73 oldX1 := x1; 42.90/11.73 oldX2 := x2; 42.90/11.73 oldX3 := x3; 42.90/11.73 oldX4 := x4; 42.90/11.73 oldX5 := x5; 42.90/11.73 oldX6 := x6; 42.90/11.73 oldX7 := x7; 42.90/11.73 oldX8 := x8; 42.90/11.73 oldX9 := x9; 42.90/11.73 oldX10 := x10; 42.90/11.73 oldX11 := x11; 42.90/11.73 oldX12 := x12; 42.90/11.73 oldX13 := x13; 42.90/11.73 oldX14 := x14; 42.90/11.73 oldX15 := x15; 42.90/11.73 oldX16 := oldX1 - 1; 42.90/11.73 oldX17 := nondet(); 42.90/11.73 oldX18 := nondet(); 42.90/11.73 oldX19 := nondet(); 42.90/11.73 oldX20 := nondet(); 42.90/11.73 oldX21 := nondet(); 42.90/11.73 oldX22 := nondet(); 42.90/11.73 oldX23 := nondet(); 42.90/11.73 oldX24 := nondet(); 42.90/11.73 oldX25 := nondet(); 42.90/11.73 oldX26 := nondet(); 42.90/11.73 oldX27 := nondet(); 42.90/11.73 assume(oldX16 > -1 && oldX3 > 1 && oldX2 > 1 && oldX1 = 1 + oldX16); 42.90/11.73 x0 := oldX0; 42.90/11.73 x1 := oldX1 - 1; 42.90/11.73 x2 := 1 + oldX16; 42.90/11.73 x3 := 1 + oldX3; 42.90/11.73 x4 := oldX4; 42.90/11.73 x5 := oldX17; 42.90/11.73 x6 := oldX18; 42.90/11.73 x7 := oldX19; 42.90/11.73 x8 := oldX20; 42.90/11.73 x9 := oldX21; 42.90/11.73 x10 := oldX22; 42.90/11.73 x11 := oldX23; 42.90/11.73 x12 := oldX24; 42.90/11.73 x13 := oldX25; 42.90/11.73 x14 := oldX26; 42.90/11.73 x15 := oldX27; 42.90/11.73 TO: 1; 42.90/11.73 42.90/11.73 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (9) T2 (COMPLETE) 42.90/11.73 Found this recurrent set for cutpoint 8: 1 <= oldX0 and oldX0 <= 1 and 0 <= oldX16 and oldX16 <= 0 and 2 <= oldX3 and 1 <= x0 and x0 <= 1 and 0 <= x1 and x1 <= 0 and 1 <= x2 and x2 <= 1 and 3 <= x3 and 1 <= x4 and oldX0-x4 <= 0 and 2 <= oldX0+x4 and oldX16-oldX0 <= -1 and oldX0-oldX16 <= 1 and oldX16+oldX0 <= 1 and 1 <= oldX16+oldX0 and oldX16-oldX3 <= -2 and 2 <= oldX16+oldX3 and oldX16-x0 <= -1 and x0-oldX16 <= 1 and oldX16+x0 <= 1 and 1 <= oldX16+x0 and oldX16-x1 <= 0 and x1-oldX16 <= 0 and oldX16+x1 <= 0 and 0 <= oldX16+x1 and oldX16-x2 <= -1 and x2-oldX16 <= 1 and oldX16+x2 <= 1 and 1 <= oldX16+x2 and oldX16-x3 <= -3 and 3 <= oldX16+x3 and oldX16-x4 <= -1 and 1 <= oldX16+x4 and oldX0-oldX3 <= -1 and 3 <= oldX3+oldX0 and x0-oldX3 <= -1 and 3 <= oldX3+x0 and x1-oldX3 <= -2 and 2 <= oldX3+x1 and x2-oldX3 <= -1 and 3 <= oldX3+x2 and oldX3-x3 <= -1 and x3-oldX3 <= 1 and 5 <= oldX3+x3 and x4-oldX3 <= -1 and 3 <= oldX3+x4 and x0-oldX0 <= 0 and oldX0-x0 <= 0 and x0+oldX0 <= 2 and 2 <= x0+oldX0 and x0-x1 <= 1 and x1-x0 <= -1 and x0+x1 <= 1 and 1 <= x0+x1 and x0-x2 <= 0 and x2-x0 <= 0 and x0+x2 <= 2 and 2 <= x0+x2 and x0-x3 <= -2 and 4 <= x0+x3 and x0-x4 <= 0 and 2 <= x0+x4 and x1-oldX0 <= -1 and oldX0-x1 <= 1 and x1+oldX0 <= 1 and 1 <= x1+oldX0 and x1-x2 <= -1 and x2-x1 <= 1 and x1+x2 <= 1 and 1 <= x1+x2 and x1-x3 <= -3 and 3 <= x1+x3 and x1-x4 <= -1 and 1 <= x1+x4 and x2-oldX0 <= 0 and oldX0-x2 <= 0 and x2+oldX0 <= 2 and 2 <= x2+oldX0 and x2-x3 <= -2 and 4 <= x2+x3 and x2-x4 <= 0 and 2 <= x2+x4 and oldX0-x3 <= -2 and 4 <= x3+oldX0 and x4-x3 <= -2 and 4 <= x3+x4 and -x4+1 <= 0 and -x1 <= 0 and x1 <= 0 42.90/11.73 42.90/11.73 ---------------------------------------- 42.90/11.73 42.90/11.73 (10) 42.90/11.73 NO 43.02/11.79 EOF