>у меня самого прояснилась нетождественность XOR и NEQV. ИМХО, можно сказать, что с помощью EQV/NEQV девайс 'оценивает', а не 'вычисляет' содержимое ячеек.
>это я так, инструментарий прикупил на всякие случаи. Предлагаю обобщение на троичный случай алгоритма реш-я задачи о построении автомата. Изменим немного условие пред. задачи, чтобы и в ответе был неопр. случай. Скажем, пусть когда автобус подъезжает, а светофор сломан, то непонятно - ждать или нет(автобус притормозит или нет). Ну, с потолка условие, в общем. Так, для иллюстрации.
Автобус(А) есть/нет(±).
Светофор(С) красный/сломан/зеленый(+/undef/-)
Мы(M) не ждем/мучаемся в догадках/ждем(+/undef/-)
Таблица истинности.
A C M
- - -
- 0 -
- + -
+ - -
+ 0 0
+ + +
Алгоритм следующий: для начала берем ситуации, когда целевая функция(М) равна true и эти ситуации объединяются(через or, т.е., как и в бинарном случае) в кучку 1. У нас всего одна такая: A and С. В 3нарной логике возникает доп. проблема: если требуется отработать ситуацию, когда операнд должен иметь значение true или false, а этот операнд теоретически способен принять значение undef(у нас такой - С), ИМХО, нужно исключить сие с помощью детектора undef, пересекая с ним данное выражение. У нас это С and (С neqv undef)
Затем точно так же собираются в отдельную кучку и ситуации, когда целевая функция должна принять значение undef. У нас такая тоже одна:
A and Not(C neqv undef).
Затем вся вторая кучка берется в скобки и пересекается(через and) с undef - таким образом достигается равенство целевой функции undef при реализации(равенстве true) любой ситуации из второй кучки. В нашей ситуации это
(A and Not(C neqv undef)) and undef.
После чего полученное опять объединяется с первой кучкой и упрощается. Имеем автомат, отрабатывающий M.
M=((A and Not(C neqv undef)) and undef) or (A and С and (С neqv undef))
>можно было бы определить not(UNDEF) => UNDEF, >но тогда это станет странностью в виде эквивалентности элемента своему дополнению. Ну и что? Эквивалентность, но не равенство же.
Для меня
cos(беск) и cos(-беск.) эквивалентны. Но говорить про равенство я не могу, что это такое я не знаю.
>вообще говоря, not это оператор над множествами. Да.
>not({FALSE}) => {UNDEF, TRUE} Почему? true ведь полное множество. Или ваш undef в него не входит?
>not({UNDEF}) => {FALSE, TRUE} >not({TRUE}) => {FALSE, UNDEF} Похоже, это уже какая-то математика из 3х чисел/объектов пошла...
Конечно, если проводить аналогии с числами, то 0 в единицу не входит. А -1 не входит в 0. Все это разные объекты и отношения между ними установлены совсем иные, нежели для множеств. ИМХО, это все не в кассу. Anika ведь предлагает знак поменять, а у множеств этой фичи нема. Или я вас опять не понял.
>всё. я спать. гоню уже по тяжёлой. Божественный смайлик!
Откуда?
Исправил глюки. Как мне кажется.
Солипсизм не пройдёт! :fal:
Это сообщение редактировалось 11.05.2004 в 16:26