Использование импликации в ограничениях
funcImplication
- функция ExternalLangDef для задания логической импликации.
Импликация - функция двух логических операндов: предпосылки и следствия, может принимать следующие значения:
Предпосылка | Следствие | Результат |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 0 |
1 | 1 | 1 |
Логически, импликация “Если а, то b “ равна “(не a) или b”. Например, ограничение вида: “Если кличка = барсик, то пол = мужской” приведет к выводу всех барсиков с мужским полом и всех (не барсиков).
Пример
Все Ивановы Иваны и все не Ивановы
var langDef = new ExternalLangDef();
Function function = langDef.GetFunction(langDef.funcImplication,
langDef.GetFunction(langDef.funcEQ, new VariableDef(langDef.StringType, "Фамилия"),"Иванов"),
langDef.GetFunction(langDef.funcEQ, new VariableDef(langDef.StringType, "Имя"), "Иван"));