- content:
  - invariant:
      format: acsl_expression
      location:
        file_name: null
        function: main
        line: 34
      type: loop_invariant
      value: '((((((((((((0 <= y) && ((z + ((__int128) y * x)) == ((long long) b *
        a))) && (a <= 20)) && (y <= 4)) && (b <= 20)) && (0 <= a)) && (1 <= b)) ||
        (((((((z == 0) && (a <= 20)) && (b == y)) && (0 <= a)) && (y <= 20)) && (1
        <= y)) && (a == x))) || ((((((((z == 0) && (y == ((b >= 0) ? (b / 2) : ((b
        / 2) - 1)))) && (a <= 20)) && (b <= 20)) && (((long long) a * 2) == x)) &&
        (0 <= a)) && (((b >= 0) ? (b % 2) : ((b % 2) + 2)) != 1)) && (1 <= y))) ||
        ((((((((z == 0) && (((__int128) y * x) == ((long long) b * a))) && (a <= 20))
        && (b <= 20)) && (0 <= a)) && (1 <= b)) && (1 <= y)) && (y <= 5))) || ((((((((1
        <= ((b >= 0) ? (b % 2) : ((b % 2) + 2))) && (a <= 20)) && (b <= 20)) && (((long
        long) a * 2) == x)) && (0 <= a)) && (x == ((__int128) z * 2))) && (1 <= b))
        && (((((long long) -1 + b) >= 0) ? (((long long) -1 + b) / 2) : ((((long long)
        -1 + b) / 2) - 1)) == y))))'
  - invariant:
      ensures: ((cond != 0))
      format: acsl_expression
      location:
        file_name: null
        function: assume_abort_if_not
        line: 9
      requires: (1)
      type: function_contract
  - invariant:
      ensures: ((1 <= cond)) && (1)
      format: acsl_expression
      location:
        file_name: null
        function: __VERIFIER_assert
        line: 12
      requires: ((1 <= cond)) && (cond != 0)
      type: function_contract
  entry_type: invariant_set
  metadata:
    format_version: '3.0'
