noFinalize Trace summary:

Step 1: State 0 -- noFinalize.c line 9 proc 0 [main@0->main@1] "MPI_Init(&argc, &argv);" -> State 1
Step 2: State 1 -- libmpi.c line 102 proc 0 [MPI_Init@0->MPI_Init@1] "assert MPIX_State == MPIX_UNINITIALIZED, "Attempt to call MPI_Init when MPI is already initialized";" -> State 2
Step 3: State 2 -- libmpi.c line 103 proc 0 [MPI_Init@1->MPI_Init@2] "MPIX_State = MPIX_INITIALIZED;" -> State 3
Step 4: State 3 -- libmpi.c line 104 proc 0 [MPI_Init@2->MPI_Init@3] "return 0;" -> State 4
Step 5: State 4 -- noFinalize.c line 10 proc 0 [main@1->main@2] "MPI_Comm_rank(MPI_COMM_WORLD, &myrank);" -> State 5
Step 6: State 5 -- libmpi.c line 114 proc 0 [MPI_Comm_rank@0->MPI_Comm_rank@1] "assert MPIX_State == MPIX_INITIALIZED, "Attempt to call MPI_Comm_rank when MPI is not initialized";" -> State 6
Step 7: State 6 -- libmpi.c line 116 proc 0 [MPI_Comm_rank@1->MPI_Comm_rank@2] "assert _comm == MPI_COMM_WORLD;" -> State 7
Step 8: State 7 -- libmpi.c line 117 proc 0 [MPI_Comm_rank@2->MPI_Comm_rank@3] "*_rank = PID;" -> State 8
Step 9: State 8 -- libmpi.c line 118 proc 0 [MPI_Comm_rank@3->MPI_Comm_rank@4] "return 0;" -> State 9
Step 10: State 9 -- noFinalize.c line 11 proc 0 [main@2->main@3] "}"

noFinalize Trace details:

begin state 0
  save = true
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 0.

Step 1: State 0 -- noFinalize.c line 9 proc 0 [main@0->main@1] "MPI_Init(&argc, &argv);" -> State 1

begin state 1
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 1
        function : MPI_Init;
        location : 0;
        argc = &argc;
        argv = &argv;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 1.

Step 2: State 1 -- libmpi.c line 102 proc 0 [MPI_Init@0->MPI_Init@1] "assert MPIX_State == MPIX_UNINITIALIZED, "Attempt to call MPI_Init when MPI is already initialized";" -> State 2

begin state 2
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 1
        function : MPI_Init;
        location : 1;
        argc = &argc;
        argv = &argv;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 2.

Step 3: State 2 -- libmpi.c line 103 proc 0 [MPI_Init@1->MPI_Init@2] "MPIX_State = MPIX_INITIALIZED;" -> State 3

begin state 3
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 1
        function : MPI_Init;
        location : 2;
        argc = &argc;
        argv = &argv;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 3.

Step 4: State 3 -- libmpi.c line 104 proc 0 [MPI_Init@2->MPI_Init@3] "return 0;" -> State 4

begin state 4
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 1;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 4.

Step 5: State 4 -- noFinalize.c line 10 proc 0 [main@1->main@2] "MPI_Comm_rank(MPI_COMM_WORLD, &myrank);" -> State 5

begin state 5
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 1
        function : MPI_Comm_rank;
        location : 0;
        _comm = 1;
        _rank = &myrank;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 1;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 5.

Step 6: State 5 -- libmpi.c line 114 proc 0 [MPI_Comm_rank@0->MPI_Comm_rank@1] "assert MPIX_State == MPIX_INITIALIZED, "Attempt to call MPI_Comm_rank when MPI is not initialized";" -> State 6

begin state 6
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 1
        function : MPI_Comm_rank;
        location : 1;
        _comm = 1;
        _rank = &myrank;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 1;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 6.

Step 7: State 6 -- libmpi.c line 116 proc 0 [MPI_Comm_rank@1->MPI_Comm_rank@2] "assert _comm == MPI_COMM_WORLD;" -> State 7

begin state 7
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 1
        function : MPI_Comm_rank;
        location : 2;
        _comm = 1;
        _rank = &myrank;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 1;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 7.

Step 8: State 7 -- libmpi.c line 117 proc 0 [MPI_Comm_rank@2->MPI_Comm_rank@3] "*_rank = PID;" -> State 8

begin state 8
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = 0 (int);
      end global variables;
      begin stack frame 1
        function : MPI_Comm_rank;
        location : 3;
        _comm = 1;
        _rank = &myrank;
      end stack frame 1;
      begin stack frame 0
        function : main;
        location : 1;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 8.

Step 9: State 8 -- libmpi.c line 118 proc 0 [MPI_Comm_rank@3->MPI_Comm_rank@4] "return 0;" -> State 9

begin state 9
  save = false
  onStack = true;
  seen = true;
  pathCondition : true
  begin model state
    begin shared variables
    end shared variables;
    begin process 0
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 1 (int);
        myrank = 0 (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 2;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 0;
    begin process 1
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 1;
    begin process 2
      begin global variables
        MPI_REQUEST_NULL = (Ref[Record[MPIX_Comm_Record; id:int]])NULL (Ref[Record[MPIX_Comm_Record; id:int]]);
        MPI_STATUS_IGNORE = (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]])NULL (Ref[Record[MPI_Status; MPI_SOURCE:int, MPI_TAG:int, SIZE:int]]);
        MPIX_State = 0 (int);
        myrank = undefined (int);
      end global variables;
      begin stack frame 0
        function : main;
        location : 0;
        argc = undefined (int);
        argv = undefined (Ref[Ref[char]]);
      end stack frame 0;
    end process 2;
  end model state
end state 9.

Step 10: State 9 -- noFinalize.c line 11 proc 0 [main@2->main@3] "}"
