Иллюстративная программа к статье "Х- проблема числа 3. Определение..."

Программа вычислят величину Cr для любой маски.

1). Начало демонстрации.

Скачайте программу illustr_prg.zip, распакуйте, и запустите illustr_prg.exe.
 
Нажмите кнопку  "Start test" на рисунке (номер 1 на рисунке) . Программа начнёт вычислять Сr для маски (2,1). (Маска расположена в правом верхнем углу).


1


Примерно 30 секунд на обычном ноутбуке достаточно, чтобы правильно найти Сr = 27. (Цифра 2 на рисунке).
Критерий работы программы: изменение чисел в левом нижнем углу (цифра 2 на рисунке).


2


Как работает программа?
 
1). Сначала программа разыгрывает количество клеток в нашем одномерном Автомате. По формуле 1 на рисунке. Помните, что граничное число для них равно 64. (N0+dN0<64).

2). Потом разыгрывается число начальных клеток В. По формуле 2 на рисунке. (Лучше бы, чтобы это число было поменьше. При количестве В клеток близком к L/2 Автомат возвратится очень быстро, и наше испытание будет не эффективно). После этого, данное число клеток случайным образом ставится на нашу линейку.

3). Далее см. работу "Х- проблема числа 3. Определение..."

Программа начинает работать; вычисляет матрицу Fx(3) от t и вычисляет добавление (если оно есть) в нашу "разрешающую" таблицу. Граничное величина К для массива 
Fx(3) у нас равна 2000. (Число С на рисунке. Его можно изменить в меньшую сторону). Это соответствует приблизительно (3/2)*2000=3000 шагам Автомата. Если данному испытанию не хватило данного числа шагов чтобы возвратится, оно прекращается и программа переходит к следующему. (В этом нет ничего страшного. Всё равно получившиеся при этом ~ 2000 строк, естественно, учитываются в "разрешающих" таблицах). В случае, если испытание возвратилось, его результаты отражены на тёмно сером фоне. 

3

(Объясним 3 числа стоящих одно над другим над каждой нашей таблицей. Первое число - это число конфигураций которое получилось для чисел 0, 1, 2. Второе число - это число конфигураций которое получилось для чисел -0 (=3), -1(=4), -2(=5)). Третье число - "объединённое". (Ясно что обе таблицы для 0 и для -0 - это одно и тоже. Одно из другого получается полным дополнением). 

Можете нажать Stop, потом нажать Clear, выбрать другую маску и начать новое испытание. (После выбора собственно маски, не забудьте нажать кнопку "Do from mask". Она делает правильные смещения для определения
Fx(3)).  Какие маски получились правильными а какие нет, у автора, см. на рисунке.


5
   
 
Здесь любопытно следующее. Для числа клеток в маске (вместе с центральной) равной 7, для определения CR, обычно достаточно несколько минут испытаний. Но чтобы получить правильный результат для CR для 8 точек в маске, часто не хватает и нескольких дней работы ноутбука (при наших параметрах)!      


Если выбрать неправильную маску (или взять не те смещения) то программа выбросит иконку "ambiguity" (см на рисунке). Это значит, что в "разрешающей" таблице образовалась двузначность. Разные величины
"разрешающей" таблицы  соответствуют одинаковым исходным величинам.

4


Начало матриц Сv(t) даются в виде "фона". Для маски (1,5) сразу видны нарушения Инварианта Точного Заполнения.