Хотя ответ Тима, приведенный выше, технически верен, для меня это выглядит как небольшой код.
Я бы предположил, что для удаления пациента из списка вы уже знаете этот список и имеете ссылку на него в тот момент, когда хотите удалить пациента. Поэтому код может быть таким простым:
id myPatient = ...;
id myList = ...;
[[myPatient mutableSetValueForKey:@"lists"] removeObject:myList];
Это, конечно, предполагает, что ваши отношения двунаправлены. Если это не так, я настоятельно рекомендую вам сделать их двунаправленными.
И наконец, поскольку это отношение многих ко многим, вы можете выполнить приведенный выше код в любом направлении.
[[myList mutableSetValueForKey:@"patients"] removeObject:myPatient];
обновление
Тогда код еще проще:
[myPatient setLists:nil];
Это удалит пациента из всех списков.