What would happen if the scheduler only considered logic in this example?
If the scheduler only considered logic, Activity B would be scheduled to start as soon as Activity A is finished, ignoring the constraint that Activity C must also be complete.