Условия перекрытия

#.net #conditional-statements

Вопрос:

у нас есть редактор для создания условий с «И», «И НЕ», «ИЛИ», «ИЛИ НЕТ».

Позже эти условия применяются к записям, чтобы выяснить, какие записи совпадают. (Логика уже существует)

Теперь нам нужно создать функцию проверки, которая определяет, что новое условие не перекрывает существующее.

Итак, если у нас есть НОВОЕ условие, такое как:

(ПАРАМЕТР = ЗНАЧЕНИЕ «ТЕСТ» = 1-4) ИЛИ ((SG= «SG12222222» И SG = «SG939393939») ИЛИ НЕТ (SG = «77777»))

и существующий такой, как:

(ПАРАМЕТР = ЗНАЧЕНИЕ «ТЕСТ» = 1) ИЛИ ((SG= «SG12222222» ИЛИ SG = «SG939393939») ИЛИ НЕТ (SG = «77777» ИЛИ SG = «88888»))

(Это не SQL-команды)

Новое условие будет перекрываться параметром с именем «ТЕСТ», а диапазон 1-4 будет перекрываться значением «1».

Наоборот, это то же самое, значение «1» совпадает с диапазоном 1-4, а «SG» со значениями «SG12222222» и «SG939393939» будут совпадать.

У кого-нибудь есть идея, как проверить эти перекрытия?

Спасибо

(Язык программирования не имеет значения)

Комментарии:

1. Если следующие два пункта считаются перекрывающимися, я не уверен, что это простая проблема для решения — A = 1 и NOT (A = 3) . Т. е. эти NOT вопросы действительно могут быть решены с помощью гаечного ключа в работе здесь.