- content:
  - invariant:
      format: acsl_expression
      location:
        file_name: null
        function: main
        line: 46
      type: loop_invariant
      value: ((((((((__int128) q * y) + r) == x) && (1 <= counter)) && (((((__int128)
        q * y) + r) + ((__int128) a * y)) == ((__int128) b + x))) && (\old(counter)
        == 0)))
  - invariant:
      format: acsl_expression
      location:
        file_name: null
        function: main
        line: 37
      type: loop_invariant
      value: (((((((((__int128) q * y) + r) == x) && (1 <= counter)) && (((((__int128)
        q * y) + r) + ((__int128) a * y)) == ((__int128) b + x))) || (((((a == 0)
        && (x == r)) && (b == 0)) && (counter == 0)) && (q == 0))) && (\old(counter)
        == 0)))
  - invariant:
      ensures: ((counter == 0))
      format: acsl_expression
      location:
        file_name: null
        function: assume_abort_if_not
        line: 11
      requires: ((counter == 0))
      type: function_contract
  - invariant:
      ensures: ((\old(counter) == 0))
      format: acsl_expression
      location:
        file_name: null
        function: main
        line: 23
      requires: ((counter == 0))
      type: function_contract
  - invariant:
      ensures: ((1 <= \old(cond))) && (1)
      format: acsl_expression
      location:
        file_name: null
        function: __VERIFIER_assert
        line: 14
      requires: ((1 <= \old(cond))) && (cond != 0)
      type: function_contract
  entry_type: invariant_set
  metadata:
    format_version: '3.0'
