В общем случае способ передачи нотификаций из модели во ViewModel не регламентируется паттерном MVVM. Как это лучше всего осуществлять - зависит от вашей задачи.
Возможно ViewModel будет сама знать о том, когда и в каком случае какие свойства модели изменяются и сама будет генерировать необходимые события PropertyChanged.
Возможно в модели будут специфичные для конкретной задачи ивенты (например, модель будет вызывать PlayerMoveCompleted когда игрок сделает ход), на которые будет подписана ViewModel и будет, в свою очередь, генерировать необходимые PropertyChanged.
Некоторые советуют в модели также реализовать INotifyPropertyChanged, но лично мне этот способ не нравится: во-первых, в модель начинает подмешиваться UI, что обычно нехорошо, а во-вторых - нотификация о смене значений конкретных пропертей это всё-таки задача ViewModel, и я не вижу смысла размазывать её ещё и на модель. Последняя должна содержать только специфичные для предметной области вещи.