22.62/7.15 YES 22.62/7.17 proof of /export/starexec/sandbox/benchmark/theBenchmark.c 22.62/7.17 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 22.62/7.17 22.62/7.17 22.62/7.17 Termination of the given C Problem could be proven: 22.62/7.17 22.62/7.17 (0) C Problem 22.62/7.17 (1) CToLLVMProof [EQUIVALENT, 157 ms] 22.62/7.17 (2) LLVM problem 22.62/7.17 (3) LLVMToTerminationGraphProof [EQUIVALENT, 2561 ms] 22.62/7.17 (4) LLVM Symbolic Execution Graph 22.62/7.17 (5) SymbolicExecutionGraphToSCCProof [SOUND, 0 ms] 22.62/7.17 (6) AND 22.62/7.17 (7) LLVM Symbolic Execution SCC 22.62/7.17 (8) SCC2IRS [SOUND, 136 ms] 22.62/7.17 (9) IntTRS 22.62/7.17 (10) IntTRSCompressionProof [EQUIVALENT, 0 ms] 22.62/7.17 (11) IntTRS 22.62/7.17 (12) RankingReductionPairProof [EQUIVALENT, 6 ms] 22.62/7.17 (13) YES 22.62/7.17 (14) LLVM Symbolic Execution SCC 22.62/7.17 (15) SCC2IRS [SOUND, 167 ms] 22.62/7.17 (16) IntTRS 22.62/7.17 (17) IntTRSCompressionProof [EQUIVALENT, 0 ms] 22.62/7.17 (18) IntTRS 22.62/7.17 (19) PolynomialOrderProcessor [EQUIVALENT, 13 ms] 22.62/7.17 (20) YES 22.62/7.17 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (0) 22.62/7.17 Obligation: 22.62/7.17 c file /export/starexec/sandbox/benchmark/theBenchmark.c 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (1) CToLLVMProof (EQUIVALENT) 22.62/7.17 Compiled c-file /export/starexec/sandbox/benchmark/theBenchmark.c to LLVM. 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (2) 22.62/7.17 Obligation: 22.62/7.17 LLVM Problem 22.62/7.17 22.62/7.17 Aliases: 22.62/7.17 22.62/7.17 Data layout: 22.62/7.17 22.62/7.17 "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" 22.62/7.17 22.62/7.17 Machine: 22.62/7.17 22.62/7.17 "x86_64-pc-linux-gnu" 22.62/7.17 22.62/7.17 Type definitions: 22.62/7.17 22.62/7.17 Global variables: 22.62/7.17 22.62/7.17 Function declarations and definitions: 22.62/7.17 22.62/7.17 *BasicFunctionTypename: "__VERIFIER_nondet_int" returnParam: i32 parameters: () variableLength: false visibilityType: DEFAULT callingConvention: ccc 22.62/7.17 *BasicFunctionTypename: "main" linkageType: EXTERNALLY_VISIBLE returnParam: i32 parameters: () variableLength: false visibilityType: DEFAULT callingConvention: ccc 22.62/7.17 0: 22.62/7.17 %1 = alloca i32, align 4 22.62/7.17 %x = alloca *i32, align 8 22.62/7.17 %y = alloca *i32, align 8 22.62/7.17 %z = alloca *i32, align 8 22.62/7.17 %m = alloca *i32, align 8 22.62/7.17 %n = alloca *i32, align 8 22.62/7.17 store 0, %1 22.62/7.17 %2 = alloca i8, numElementsLit: 4 22.62/7.17 %3 = bitcast *i8 %2 to *i32 22.62/7.17 store %3, %x 22.62/7.17 %4 = alloca i8, numElementsLit: 4 22.62/7.17 %5 = bitcast *i8 %4 to *i32 22.62/7.17 store %5, %y 22.62/7.17 %6 = alloca i8, numElementsLit: 4 22.62/7.17 %7 = bitcast *i8 %6 to *i32 22.62/7.17 store %7, %z 22.62/7.17 %8 = alloca i8, numElementsLit: 4 22.62/7.17 %9 = bitcast *i8 %8 to *i32 22.62/7.17 store %9, %m 22.62/7.17 %10 = alloca i8, numElementsLit: 4 22.62/7.17 %11 = bitcast *i8 %10 to *i32 22.62/7.17 store %11, %n 22.62/7.17 %12 = call i32 @__VERIFIER_nondet_int() 22.62/7.17 %13 = icmp ne %12 0 22.62/7.17 br %13, %14, %16 22.62/7.17 14: 22.62/7.17 %15 = load %x 22.62/7.17 store 1, %15 22.62/7.17 br %18 22.62/7.17 16: 22.62/7.17 %17 = load %x 22.62/7.17 store -1, %17 22.62/7.17 br %18 22.62/7.17 18: 22.62/7.17 %19 = load %x 22.62/7.17 %20 = load %19 22.62/7.17 %21 = icmp sgt %20 0 22.62/7.17 br %21, %22, %26 22.62/7.17 22: 22.62/7.17 %23 = load %x 22.62/7.17 %24 = load %23 22.62/7.17 %25 = add %24 1 22.62/7.17 store %25, %23 22.62/7.17 br %30 22.62/7.17 26: 22.62/7.17 %27 = load %x 22.62/7.17 %28 = load %27 22.62/7.17 %29 = add %28 -1 22.62/7.17 store %29, %27 22.62/7.17 br %30 22.62/7.17 30: 22.62/7.17 %31 = load %x 22.62/7.17 %32 = load %31 22.62/7.17 %33 = icmp sgt %32 0 22.62/7.17 br %33, %34, %38 22.62/7.17 34: 22.62/7.17 %35 = load %x 22.62/7.17 %36 = load %35 22.62/7.17 %37 = add %36 1 22.62/7.17 store %37, %35 22.62/7.17 br %42 22.62/7.17 38: 22.62/7.17 %39 = load %x 22.62/7.17 %40 = load %39 22.62/7.17 %41 = add %40 -1 22.62/7.17 store %41, %39 22.62/7.17 br %42 22.62/7.17 42: 22.62/7.17 %43 = load %x 22.62/7.17 %44 = load %43 22.62/7.17 %45 = icmp sgt %44 0 22.62/7.17 br %45, %46, %50 22.62/7.17 46: 22.62/7.17 %47 = load %x 22.62/7.17 %48 = load %47 22.62/7.17 %49 = add %48 1 22.62/7.17 store %49, %47 22.62/7.17 br %54 22.62/7.17 50: 22.62/7.17 %51 = load %x 22.62/7.17 %52 = load %51 22.62/7.17 %53 = add %52 -1 22.62/7.17 store %53, %51 22.62/7.17 br %54 22.62/7.17 54: 22.62/7.17 %55 = load %x 22.62/7.17 %56 = load %55 22.62/7.17 %57 = icmp sgt %56 0 22.62/7.17 br %57, %58, %62 22.62/7.17 58: 22.62/7.17 %59 = load %x 22.62/7.17 %60 = load %59 22.62/7.17 %61 = add %60 1 22.62/7.17 store %61, %59 22.62/7.17 br %66 22.62/7.17 62: 22.62/7.17 %63 = load %x 22.62/7.17 %64 = load %63 22.62/7.17 %65 = add %64 -1 22.62/7.17 store %65, %63 22.62/7.17 br %66 22.62/7.17 66: 22.62/7.17 %67 = load %x 22.62/7.17 %68 = load %67 22.62/7.17 %69 = icmp sgt %68 0 22.62/7.17 br %69, %70, %74 22.62/7.17 70: 22.62/7.17 %71 = load %x 22.62/7.17 %72 = load %71 22.62/7.17 %73 = add %72 1 22.62/7.17 store %73, %71 22.62/7.17 br %78 22.62/7.17 74: 22.62/7.17 %75 = load %x 22.62/7.17 %76 = load %75 22.62/7.17 %77 = add %76 -1 22.62/7.17 store %77, %75 22.62/7.17 br %78 22.62/7.17 78: 22.62/7.17 %79 = load %x 22.62/7.17 %80 = load %79 22.62/7.17 %81 = icmp sgt %80 0 22.62/7.17 br %81, %82, %86 22.62/7.17 82: 22.62/7.17 %83 = load %x 22.62/7.17 %84 = load %83 22.62/7.17 %85 = add %84 1 22.62/7.17 store %85, %83 22.62/7.17 br %90 22.62/7.17 86: 22.62/7.17 %87 = load %x 22.62/7.17 %88 = load %87 22.62/7.17 %89 = add %88 -1 22.62/7.17 store %89, %87 22.62/7.17 br %90 22.62/7.17 90: 22.62/7.17 %91 = load %x 22.62/7.17 %92 = load %91 22.62/7.17 %93 = icmp sgt %92 0 22.62/7.17 br %93, %94, %98 22.62/7.17 94: 22.62/7.17 %95 = load %x 22.62/7.17 %96 = load %95 22.62/7.17 %97 = add %96 1 22.62/7.17 store %97, %95 22.62/7.17 br %102 22.62/7.17 98: 22.62/7.17 %99 = load %x 22.62/7.17 %100 = load %99 22.62/7.17 %101 = add %100 -1 22.62/7.17 store %101, %99 22.62/7.17 br %102 22.62/7.17 102: 22.62/7.17 %103 = load %x 22.62/7.17 %104 = load %103 22.62/7.17 %105 = icmp sgt %104 0 22.62/7.17 br %105, %106, %110 22.62/7.17 106: 22.62/7.17 %107 = load %x 22.62/7.17 %108 = load %107 22.62/7.17 %109 = add %108 1 22.62/7.17 store %109, %107 22.62/7.17 br %114 22.62/7.17 110: 22.62/7.17 %111 = load %x 22.62/7.17 %112 = load %111 22.62/7.17 %113 = add %112 -1 22.62/7.17 store %113, %111 22.62/7.17 br %114 22.62/7.17 114: 22.62/7.17 br %115 22.62/7.17 115: 22.62/7.17 %116 = load %y 22.62/7.17 %117 = load %116 22.62/7.17 %118 = icmp slt %117 100 22.62/7.17 br %118, %119, %123 22.62/7.17 119: 22.62/7.17 %120 = load %z 22.62/7.17 %121 = load %120 22.62/7.17 %122 = icmp slt %121 100 22.62/7.17 br %123 22.62/7.17 123: 22.62/7.17 %124 = phi [0, %115], [%122, %119] 22.62/7.17 br %124, %125, %138 22.62/7.17 125: 22.62/7.17 %126 = load %y 22.62/7.17 %127 = load %126 22.62/7.17 %128 = load %x 22.62/7.17 %129 = load %128 22.62/7.17 %130 = add %127 %129 22.62/7.17 %131 = load %y 22.62/7.17 store %130, %131 22.62/7.17 %132 = load %z 22.62/7.17 %133 = load %132 22.62/7.17 %134 = load %x 22.62/7.17 %135 = load %134 22.62/7.17 %136 = sub %133 %135 22.62/7.17 %137 = load %z 22.62/7.17 store %136, %137 22.62/7.17 br %115 22.62/7.17 138: 22.62/7.17 ret 0 22.62/7.17 22.62/7.17 22.62/7.17 Analyze Termination of all function calls matching the pattern: 22.62/7.17 main() 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (3) LLVMToTerminationGraphProof (EQUIVALENT) 22.62/7.17 Constructed symbolic execution graph for LLVM program and proved memory safety. 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (4) 22.62/7.17 Obligation: 22.62/7.17 SE Graph 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (5) SymbolicExecutionGraphToSCCProof (SOUND) 22.62/7.17 Splitted symbolic execution graph to 2 SCCs. 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (6) 22.62/7.17 Complex Obligation (AND) 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (7) 22.62/7.17 Obligation: 22.62/7.17 SCC 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (8) SCC2IRS (SOUND) 22.62/7.17 Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: 22.62/7.17 Generated rules. Obtained 26 rulesP rules: 22.62/7.17 f_764(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v31, 1, v35, v234, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_766(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_766(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_769(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_769(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_772(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: TRUE 22.62/7.17 f_772(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_775(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_775(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v35, v31, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_778(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_778(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_780(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) :|: v238 < 100 && v35 <= 90 22.62/7.17 f_780(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) -> f_783(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) :|: 0 = 0 22.62/7.17 f_783(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) -> f_786(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) :|: 0 = 0 22.62/7.17 f_786(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) -> f_789(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) :|: TRUE 22.62/7.17 f_789(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) -> f_792(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) :|: 0 = 0 22.62/7.17 f_792(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v31, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90) -> f_794(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99) :|: 0 = 0 22.62/7.17 f_794(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99) -> f_796(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99) :|: 0 = 0 22.62/7.17 f_796(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99) -> f_798(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99) :|: 0 = 0 22.62/7.17 f_798(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99) -> f_800(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: 9 + v932 = v234 && v932 <= 81 22.62/7.17 f_800(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_802(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: 0 = 0 22.62/7.17 f_802(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_804(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: TRUE 22.62/7.17 f_804(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_806(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: 0 = 0 22.62/7.17 f_806(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v35, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_808(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: 0 = 0 22.62/7.17 f_808(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_810(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: 0 = 0 22.62/7.17 f_810(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_812(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) :|: 0 = 0 22.62/7.17 f_812(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81) -> f_814(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) :|: v936 = 9 + v238 && v936 <= 108 22.62/7.17 f_814(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) -> f_816(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) :|: 0 = 0 22.62/7.17 f_816(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) -> f_818(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) :|: TRUE 22.62/7.17 f_818(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) -> f_820(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) :|: TRUE 22.62/7.17 f_820(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 90, 99, 81, 108) -> f_762(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v234, 1, v238, v932, v936, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: TRUE 22.62/7.17 f_762(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v31, 1, v35, v234, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) -> f_764(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v31, 1, v35, v234, v238, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 3, 7, 9, 4, 8, 99, 90, 108) :|: 0 = 0 22.62/7.17 Combined rules. Obtained 1 rulesP rules: 22.62/7.17 f_764(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13:0, v16:0, v19:0, v22:0, v25:0, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, v31:0, 1, v35:0, 9 + v932:0, v238:0, v2:0, v4:0, v6:0, v8:0, v10:0, v12:0, v14:0, v17:0, v20:0, v23:0, v26:0, 3, 7, 9, 4, 8, 99, 90, 108) -> f_764(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13:0, v16:0, v19:0, v22:0, v25:0, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, 9 + v932:0, 1, v238:0, v932:0, 9 + v238:0, v2:0, v4:0, v6:0, v8:0, v10:0, v12:0, v14:0, v17:0, v20:0, v23:0, v26:0, 3, 7, 9, 4, 8, 99, 90, 108) :|: v35:0 < 91 && v238:0 < 100 && v932:0 < 82 22.62/7.17 Filtered unneeded arguments: 22.62/7.17 f_764(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, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45) -> f_764(x24, x25, x26) 22.62/7.17 Removed division, modulo operations, cleaned up constraints. Obtained 1 rules.P rules: 22.62/7.17 f_764(v35:0, sum~cons_9~v932:0, v238:0) -> f_764(v238:0, v932:0, 9 + v238:0) :|: v238:0 < 100 && v932:0 < 82 && v35:0 < 91 && sum~cons_9~v932:0 = 9 + v932:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (9) 22.62/7.17 Obligation: 22.62/7.17 Rules: 22.62/7.17 f_764(v35:0, sum~cons_9~v932:0, v238:0) -> f_764(v238:0, v932:0, 9 + v238:0) :|: v238:0 < 100 && v932:0 < 82 && v35:0 < 91 && sum~cons_9~v932:0 = 9 + v932:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (10) IntTRSCompressionProof (EQUIVALENT) 22.62/7.17 Compressed rules. 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (11) 22.62/7.17 Obligation: 22.62/7.17 Rules: 22.62/7.17 f_764(v35:0:0, sum~cons_9~v932:0:0, v238:0:0) -> f_764(v238:0:0, v932:0:0, 9 + v238:0:0) :|: v238:0:0 < 100 && v932:0:0 < 82 && v35:0:0 < 91 && sum~cons_9~v932:0:0 = 9 + v932:0:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (12) RankingReductionPairProof (EQUIVALENT) 22.62/7.17 Interpretation: 22.62/7.17 [ f_764 ] = -1/9*f_764_3 22.62/7.17 22.62/7.17 The following rules are decreasing: 22.62/7.17 f_764(v35:0:0, sum~cons_9~v932:0:0, v238:0:0) -> f_764(v238:0:0, v932:0:0, 9 + v238:0:0) :|: v238:0:0 < 100 && v932:0:0 < 82 && v35:0:0 < 91 && sum~cons_9~v932:0:0 = 9 + v932:0:0 22.62/7.17 22.62/7.17 The following rules are bounded: 22.62/7.17 f_764(v35:0:0, sum~cons_9~v932:0:0, v238:0:0) -> f_764(v238:0:0, v932:0:0, 9 + v238:0:0) :|: v238:0:0 < 100 && v932:0:0 < 82 && v35:0:0 < 91 && sum~cons_9~v932:0:0 = 9 + v932:0:0 22.62/7.17 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (13) 22.62/7.17 YES 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (14) 22.62/7.17 Obligation: 22.62/7.17 SCC 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (15) SCC2IRS (SOUND) 22.62/7.17 Transformed LLVM symbolic execution graph SCC into a rewrite problem. Log: 22.62/7.17 Generated rules. Obtained 26 rulesP rules: 22.62/7.17 f_763(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v29, v33, v233, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 108, 90) -> f_765(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 108, 90) :|: 0 = 0 22.62/7.17 f_765(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 108, 90) -> f_767(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: v233 < 100 && v29 <= 90 22.62/7.17 f_767(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_770(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: 0 = 0 22.62/7.17 f_770(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_773(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: TRUE 22.62/7.17 f_773(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_776(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: 0 = 0 22.62/7.17 f_776(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v33, v29, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_779(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: 0 = 0 22.62/7.17 f_779(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_782(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: 0 = 0 22.62/7.17 f_782(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_785(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: 0 = 0 22.62/7.17 f_785(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_788(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: TRUE 22.62/7.17 f_788(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_791(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) :|: 0 = 0 22.62/7.17 f_791(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v29, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 90, 99) -> f_793(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90) :|: 0 = 0 22.62/7.17 f_793(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90) -> f_795(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90) :|: 0 = 0 22.62/7.17 f_795(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90) -> f_797(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90) :|: 0 = 0 22.62/7.17 f_797(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90) -> f_799(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: v931 = 9 + v233 && v931 <= 108 22.62/7.17 f_799(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_801(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_801(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_803(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: TRUE 22.62/7.17 f_803(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_805(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_805(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v33, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_807(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_807(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_809(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_809(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_811(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) :|: 0 = 0 22.62/7.17 f_811(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108) -> f_813(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) :|: 9 + v935 = v237 && v935 <= 81 22.62/7.17 f_813(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) -> f_815(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) :|: 0 = 0 22.62/7.17 f_815(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) -> f_817(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) :|: TRUE 22.62/7.17 f_817(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) -> f_819(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) :|: TRUE 22.62/7.17 f_819(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 90, 108, 81) -> f_761(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233, v237, v931, v935, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 108, 90) :|: TRUE 22.62/7.17 f_761(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v29, v33, v233, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 108, 90) -> f_763(v1, v3, v5, v7, v9, v11, v13, v16, v19, v22, v25, v28, 1, 2, 3, 4, 5, 6, 7, 8, 9, v29, v33, v233, v237, v2, v4, v6, v8, v10, v12, v14, v17, v20, v23, v26, 0, 99, 108, 90) :|: 0 = 0 22.62/7.17 Combined rules. Obtained 1 rulesP rules: 22.62/7.17 f_763(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13:0, v16:0, v19:0, v22:0, v25:0, v28:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, v29:0, v33:0, v233:0, 9 + v935:0, v2:0, v4:0, v6:0, v8:0, v10:0, v12:0, v14:0, v17:0, v20:0, v23:0, v26:0, 0, 99, 108, 90) -> f_763(v1:0, v3:0, v5:0, v7:0, v9:0, v11:0, v13:0, v16:0, v19:0, v22:0, v25:0, v28:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, v233:0, 9 + v935:0, 9 + v233:0, v935:0, v2:0, v4:0, v6:0, v8:0, v10:0, v12:0, v14:0, v17:0, v20:0, v23:0, v26:0, 0, 99, 108, 90) :|: v29:0 < 91 && v233:0 < 100 && v935:0 < 82 22.62/7.17 Filtered unneeded arguments: 22.62/7.17 f_763(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, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40) -> f_763(x22, x24, x25) 22.62/7.17 Removed division, modulo operations, cleaned up constraints. Obtained 1 rules.P rules: 22.62/7.17 f_763(v29:0, v233:0, sum~cons_9~v935:0) -> f_763(v233:0, 9 + v233:0, v935:0) :|: v233:0 < 100 && v935:0 < 82 && v29:0 < 91 && sum~cons_9~v935:0 = 9 + v935:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (16) 22.62/7.17 Obligation: 22.62/7.17 Rules: 22.62/7.17 f_763(v29:0, v233:0, sum~cons_9~v935:0) -> f_763(v233:0, 9 + v233:0, v935:0) :|: v233:0 < 100 && v935:0 < 82 && v29:0 < 91 && sum~cons_9~v935:0 = 9 + v935:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (17) IntTRSCompressionProof (EQUIVALENT) 22.62/7.17 Compressed rules. 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (18) 22.62/7.17 Obligation: 22.62/7.17 Rules: 22.62/7.17 f_763(v29:0:0, v233:0:0, sum~cons_9~v935:0:0) -> f_763(v233:0:0, 9 + v233:0:0, v935:0:0) :|: v233:0:0 < 100 && v935:0:0 < 82 && v29:0:0 < 91 && sum~cons_9~v935:0:0 = 9 + v935:0:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (19) PolynomialOrderProcessor (EQUIVALENT) 22.62/7.17 Found the following polynomial interpretation: 22.62/7.17 [f_763(x, x1, x2)] = 288 - 2*x1 - x2 22.62/7.17 22.62/7.17 The following rules are decreasing: 22.62/7.17 f_763(v29:0:0, v233:0:0, sum~cons_9~v935:0:0) -> f_763(v233:0:0, 9 + v233:0:0, v935:0:0) :|: v233:0:0 < 100 && v935:0:0 < 82 && v29:0:0 < 91 && sum~cons_9~v935:0:0 = 9 + v935:0:0 22.62/7.17 The following rules are bounded: 22.62/7.17 f_763(v29:0:0, v233:0:0, sum~cons_9~v935:0:0) -> f_763(v233:0:0, 9 + v233:0:0, v935:0:0) :|: v233:0:0 < 100 && v935:0:0 < 82 && v29:0:0 < 91 && sum~cons_9~v935:0:0 = 9 + v935:0:0 22.62/7.17 22.62/7.17 ---------------------------------------- 22.62/7.17 22.62/7.17 (20) 22.62/7.17 YES 22.89/7.22 EOF