- entry_type: invariant_set
  metadata:
    format_version: "2.0"
    uuid: b4835155-0e81-4692-81ee-10d10b3e63ab
    creation_time: 2025-03-22T17:09:52Z
    producer:
      name: Goblint
      version: heads/master-0-g66dff5a90-dirty
      command_line: '''./goblint'' ''--conf'' ''conf/svcomp.json'' ''--disable'' ''witness.graphml.enabled''
        ''--sets'' ''ana.specification'' ''/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/properties/termination.prp''
        ''--sets'' ''exp.architecture'' ''32bit'' ''/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/array-memsafety/strreplace-alloca-2.i'''
    task:
      input_files:
      - /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/array-memsafety/strreplace-alloca-2.i
      input_file_hashes:
        /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/array-memsafety/strreplace-alloca-2.i: 961e7f6fbd61acd9d4f1771460dcf26fd486b3de35e5e0e3ca8e6e03bda0fabc
      data_model: ILP32
      language: C
      specification: CHECK( init(main()), LTL(F end) )
  content:
  - invariant:
      type: loop_invariant
      location:
        file_name: /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/array-memsafety/strreplace-alloca-2.i
        line: 533
        column: 2
        function: main
      value: (-1LL - (long long )i) + (long long )length1 >= 0LL
      format: c_expression
  - invariant:
      type: loop_invariant
      location:
        file_name: /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/array-memsafety/strreplace-alloca-2.i
        line: 533
        column: 2
        function: main
      value: (((((((3 <= length1 && (-5LL + (long long )i) + (long long )length1 >=
        0LL) && (2147483645LL + (long long )i) - (long long )length1 >= 0LL) && (2147483649LL
        - (long long )i) - (long long )length1 >= 0LL) && i == 2) || ((((2 <= length1
        && (-3LL + (long long )i) + (long long )length1 >= 0LL) && (2147483646LL +
        (long long )i) - (long long )length1 >= 0LL) && (2147483648LL - (long long
        )i) - (long long )length1 >= 0LL) && i == 1)) || (((((1 <= length1 && (-1LL
        + (long long )i) + (long long )length1 >= 0LL) && (2147483647LL + (long long
        )i) - (long long )length1 >= 0LL) && (2147483647LL - (long long )i) - (long
        long )length1 >= 0LL) && 0 == i) && i == 0)) || (((((4 <= i && 5 <= length1)
        && i <= 2147483646) && (-9LL + (long long )i) + (long long )length1 >= 0LL)
        && (2147483643LL + (long long )i) - (long long )length1 >= 0LL) && (4294967293LL
        - (long long )i) - (long long )length1 >= 0LL)) || ((((4 <= length1 && (-7LL
        + (long long )i) + (long long )length1 >= 0LL) && (2147483644LL + (long long
        )i) - (long long )length1 >= 0LL) && (2147483650LL - (long long )i) - (long
        long )length1 >= 0LL) && i == 3)
      format: c_expression
  - invariant:
      type: loop_invariant
      location:
        file_name: /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/array-memsafety/strreplace-alloca-2.i
        line: 517
        column: 6
        function: cstrreplace
      value: (0 <= numReplaced || (numReplaced == 0 || numReplaced == 1)) || ((0 ==
        numReplaced && s == p) && numReplaced == 0)
      format: c_expression
