这个公式由杰夫·塔珀发现。
如果 k=960 939 379 918 958 884 971 672 962 127 852 754 715 004 339 660 129 306 651 505 519 271 702 802 395 266 424 689 642 842 174 350 718 121 267 153 782 770 623 355 993 237 280 874 144 307 891 325 963 941 337 723 487 857 735 749 823 926 629 715 517 173 716 995 165 232 890 538 221 612 403 238 855 866 184 013 235 585 136 048 828 693 337 902 491 454 229 288 667 081 096 184 496 091 705 183 454 067 827 731 551 705 405 381 627 380 967 602 565 625 016 981 482 083 418 783 163 849 115 590 225 610 003 652 351 370 343 874 461 848 378 737 238 198 224 849 863 465 033 159 410 054 974 700 593 138 339 226 497 249 461 751 545 728 366 702 369 745 461 014 655 997 933 798 537 483 143 786 841 806 593 422 227 898 388 722 980 000 748 404 719
在 和
范围中将符合以上不等式的点
绘制出来,结果是:
尝试理解这个公式:
表示对
向下取整。
简化公式:,其中
为整数。
下面开始逐个区域分析这个表达式:
- 分析
,其中左半部分结果为
或
的倍数,右半部分结果为
内的整数。考虑到
和
的定义域,表达式的值域为
内的所有整数。
- 分析
,通过
的范围知,其值是固定的
。
- 分析
,这个表达式的作用为将
的二进制形式的小数点左移
位。举例:
,
的二进制形式为
,小数点左移两位得
,即
。所以
的值域为
。
- 分析
,知道根据
整数部分的奇偶性,表达式的值分别为1或0,所以
的作用是判断
整数部分是奇数还是偶数,亦即
的二进制形式的个位是1还是0。所以整个Tupper自指公式其实是在判断
的二进制形式的每一位是1还是0。
的二进制形式为:
00110010101000100
00101010101111100
00100100101000000
00000000000000000
00000000100000000
00000001010000000
00000010001000000
00000000000000000
11111111111111111
10000000000000000
10000011110000000
00000000010000000
00000011100000000
00000000010000000
00000011100000000
00000000000000000
00000001100000000
00000010010000000
00000010010000000
00000001100000000
00000000000000000
00000001100000000
00000010010000000
00000010010000000
00000011111100000
00000000000000000
00000111111100000
00111000000011100
11000000000000011
00000000000000000
11111111111111110
10000000000000000
10111110100000000
00000000101011000
00110010100100000
10001110100011000
10000000000000000
11111111111111110
00000000000000000
00000011001000000
00000010100100000
00000010010100000
00000010001000100
00000000000000100
00000000000000000
00000000000011111
00000000000000000
00000000000011001
00000000000000111
00000000000000000
00000000011111111
00000000010000000
00000000010010100
00000000000001000
00000000010010100
00000000010000000
00000000011111111
00000000000000000
00000000000000100
00000000000000100
00000000000000000
00000000000011100
00000000000000100
00000000000011100
00000000000000100
00000000000011000
00000000000000000
00000000000011100
00000000000010100
00000000000011100
00000000000000000
00000000000011100
00000000000010100
00000000000011111
00000000000000000
00000000000111100
00000000011000011
00000000000000000
00000000011111111
00000000010000000
00000000010101100
00000000000010000
00000000010001100
00000000010000000
00000000011111111
00000000000000000
00000000010000000
00000000001100000
00000000000000000
00000000000011111
00000000000000000
00000000000011001
00000000000000111
00000000000000000
00000000011000011
00010000000111100
00001100000000000
00000000000000000
00000011001000000
00000010100100000
00000010010100000
11000010001000011
00111000000011100
10000111111100000
10000000000000000
11111111111111111
可以看到由1组成了我们想要的图形。
知道了它的原理,我们也能自己计算k的值,以构成我们想要的图形。或者直接利用这个网站:https://tuppers-formula.ovh/