>>> cortl
[...
Не противоречит. Но в моём подходе есть отличия, варианты входных значений 00, 01, 10, 11 дают истину каждый для своей функции. Они просты, легки, имеют одинаковый формат и архитектуру. И мне нет необходимости строить из базиса NAND всё это:
00 - NOR=NOT{ NOT[ NOT( A AND A ) AND NOT( B AND B )] AND NOT[ NOT( A AND A ) AND NOT( B AND B )] } Это я содрал из NAND Logic;
01 - Это в NAND Logic я не нашёл, думаю, будет ещё длиннее;
10 - Это в NAND Logic я не нашёл, думаю, будет ещё длиннее;
11 - AND=NOT[ NOT( A AND B ) AND NOT( A AND B ) ] Это я содрал из NAND Logic.
Зачем эти мучения?
...]
так эти мучения и не нужны!!
все ваши функции кроме одной (базовой) становятся не примитивами а точно такими же как и все другие на свете функции. Т.е. при необходимости, сеть должна их создавать сама.
кстати, вы описываете примеры не через {NAND} а через {NOT,AND}. это разные базисы.
NOR(a,b) = ( NAND(a NAND a) NAND (b NAND b) ) NAND ( NAND(a NAND a) NAND (b NAND b) )
AND(a,b) = (a NAND b) NAND (a NAND b)
f2(a,b) = NOT(a) AND b = NOT( b->a ) = (a NAND a) AND b
= ((a NAND a) NAND b) NAND ((a NAND a) NAND b)
f3(a,b) = a AND NOT(b) = NOT( a->b ) = a AND ( b NAND b )
= (a NAND ( b NAND b )) NAND (a NAND ( b NAND b ))
НО ЭТОГО НЕ ТРЕБУЕТСЯ
[...
Вы ответили на самые простые вопросы. При этом приходится разбираться и додумывать какой ответ к какому вопросу относится. ...]
Приехали, я же четко написал, что к чему относится.
Ваша первая проблема была в том, как строить сеть.
Вторая проблема была в том, что NOT имеет другое кол-во аргументов.
Больше проблем описанных вами не было.
Так вот при наличии у вас алг. построения вашей "сети", первой проблемы вообще нет. элементы при инициализации подбирать вообще не надо, только соединения между "нейронами", но это надо делать и в вашем текущем случае (вплоть до объединения входов в одном "нейроне")
вторая проблема вообще тривиальна и я привел один из ее решений.