(uniq1 or uniq2) принимает значение "Истина" если хотя бы одно из условий истинно. И "ложь" если оба ложны. NOT - инвертирует результат. not(u1 or u2) будет "Ложь" если хотя бы одно из условий истинно, и "Истина" если оба условия ложны
Так значит оба условия должны быть фолс, чтоб выполнилось?