Для небольшой цифровой системы мне дается требование: «Двери не должны запираться (a = двери запираются), когда водитель вышел из машины (b = водитель в машине), но ключи все еще находятся внутри (c = ключи). внутри) двигатель, даже если водитель закрыл рычаг блокировки двери (d = рычаг блокировки закрыт) ПРИМЕЧАНИЕ: если водитель находится в автомобиле (b) и требует, чтобы дверь была заперта (d), то двери должен запирать (а)».
Я думал, что это можно разделить на 2 части (где общее выражение - это 1. первый набор требований и 2. часть «ПРИМЕЧАНИЕ», поэтому 1 + 2?)
В первой части я думал, что логическое выражение будет выглядеть так:
a' = b' AND c AND d.
a' = b'cd.
Затем я попытался взять дополнение к обеим частям: (a')' = (b'cd)'
...и используя закон ДеМоргана... a = (b'c)' + d'...и затем снова используя закон ДеМоргана... a = b + c' + d'.
Но не означает ли это, что «двери должны запираться, когда водитель находится в машине ИЛИ ключи не находятся в машине ИЛИ рычаг блокировки двери не задействован». Это вообще не имеет смысла.
Во второй части (ПРИМЕЧАНИЕ:) я получил a = bd. Итак, должно ли общее выражение быть дополнением этого с неправильно звучащей частью из предыдущего? Тогда у меня было бы: a = b + c' + d' + bd. Я думаю, что с помощью хитрого распределительного свойства, данного в классе, я могу упростить компонент c' + bd до (c' + b) (c' + d). Тогда у меня было бы a = (c' + b) (c' + d) + b + d'.
Это сбивает с толку; могу ли я упростить, если еще больше? (ну, вообще-то, наверное, это изначально неправильно!) Где я ошибся и где остановиться?