Constraints (6) represent the finish-to-start precedence constraints when activities are not overlapped. If activities are overlapped, constraints (7) state that the downstream activity must start at the upstream activity finish time minus one of the feasible overlap duration.