Record Grotto half-ulp tables and comparison geneval, and factor shared beaver terms before the quotient.

Horner and window evaluation need those tables in the tree. Comparison geneval opens the same value words as a Doerner–Shelat key. A factor common to every polynomial term is multiplied first so that preprocessing stays smaller.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Ryan Henry 2026-09-24 15:16:21 -06:00
parent 3f10e05176
commit 875f09fec1
14 changed files with 42668 additions and 184 deletions

View file

@ -0,0 +1,238 @@
{1, 8, -1792, 0},
{1, 8, 0, 128},
{1, 8, 1792, 256},
{1, 12, -40960, 0},
{1, 12, 0, 2048},
{1, 12, 40960, 4096},
{1, 16, -786432, 0},
{1, 16, 0, 32768},
{1, 16, 786432, 65536},
{1, 20, -15728640, 0},
{1, 20, 0, 524288},
{1, 20, 15728640, 1048576},
{1, 24, -301989888, 0},
{1, 24, 0, 8388608},
{1, 24, 301989888, 16777216},
{1, 28, -5637144576, 0},
{1, 28, 0, 134217728},
{1, 28, 5637144576, 268435456},
{1, 32, -98784247808, 0},
{1, 32, 0, 2147483648},
{1, 32, 98784247808, 4294967296},
{2, 8, -1024, -256},
{2, 8, 0, 0},
{2, 8, 1024, 256},
{2, 12, -20480, -4096},
{2, 12, 0, 0},
{2, 12, 20480, 4096},
{2, 16, -458752, -65536},
{2, 16, 0, 0},
{2, 16, 458752, 65536},
{2, 20, -8388608, -1048576},
{2, 20, 0, 0},
{2, 20, 8388608, 1048576},
{2, 24, -167772160, -16777216},
{2, 24, 0, 0},
{2, 24, 167772160, 16777216},
{2, 28, -2952790016, -268435456},
{2, 28, 0, 0},
{2, 28, 2952790016, 268435456},
{2, 32, -51539607552, -4294967296},
{2, 32, 0, 0},
{2, 32, 51539607552, 4294967296},
{3, 8, -768, -256},
{3, 8, 0, 0},
{3, 8, 768, 256},
{3, 12, -12288, -4096},
{3, 12, 0, 0},
{3, 12, 12288, 4096},
{3, 16, -262144, -65536},
{3, 16, 0, 0},
{3, 16, 262144, 65536},
{3, 20, -4194304, -1048576},
{3, 20, 0, 0},
{3, 20, 4194304, 1048576},
{3, 24, -67108864, -16777216},
{3, 24, 0, 0},
{3, 24, 67108864, 16777216},
{3, 28, -1342177280, -268435456},
{3, 28, 0, 0},
{3, 28, 1342177280, 268435456},
{3, 32, -21474836480, -4294967296},
{3, 32, 0, 0},
{3, 32, 21474836480, 4294967296},
{5, 8, -1792, 0},
{5, 8, 0, 177},
{5, 8, 1792, 1792},
{5, 12, -40960, 0},
{5, 12, 0, 2839},
{5, 12, 40960, 40960},
{5, 16, -786432, 0},
{5, 16, 0, 45426},
{5, 16, 786432, 786432},
{5, 20, -15728640, 0},
{5, 20, 0, 726818},
{5, 20, 15728640, 15728640},
{5, 24, -301989888, 0},
{5, 24, 0, 11629080},
{5, 24, 301989888, 301989888},
{5, 28, -5637144576, 0},
{5, 28, 0, 186065280},
{5, 28, 5637144576, 5637144576},
{5, 32, -98784247808, 0},
{5, 32, 0, 2977044472},
{5, 32, 98784247808, 98784247808},
{8, 8, -1024, 0},
{8, 8, 0, 0},
{8, 8, 1024, 1024},
{8, 12, -20480, 0},
{8, 12, 0, 0},
{8, 12, 20480, 20480},
{8, 16, -327680, 0},
{8, 16, 0, 0},
{8, 16, 327680, 327680},
{8, 20, -6291456, 0},
{8, 20, 0, 0},
{8, 20, 6291456, 6291456},
{8, 24, -100663296, 0},
{8, 24, 0, 0},
{8, 24, 100663296, 100663296},
{8, 28, -1879048192, 0},
{8, 28, 0, 0},
{8, 28, 1879048192, 1879048192},
{8, 32, -30064771072, 0},
{8, 32, 0, 0},
{8, 32, 30064771072, 30064771072},
{9, 8, -2304, 0},
{9, 8, 0, 0},
{9, 8, 2304, 2304},
{9, 12, -49152, 0},
{9, 12, 0, 0},
{9, 12, 49152, 49152},
{9, 16, -983040, 0},
{9, 16, 0, 0},
{9, 16, 983040, 983040},
{9, 20, -18874368, 0},
{9, 20, 0, 0},
{9, 20, 18874368, 18874368},
{9, 24, -352321536, 0},
{9, 24, 0, 0},
{9, 24, 352321536, 352321536},
{9, 28, -6442450944, 0},
{9, 28, 0, 0},
{9, 28, 6442450944, 6442450944},
{9, 32, -115964116992, 0},
{9, 32, 0, 0},
{9, 32, 115964116992, 115964116992},
{10, 8, -2304, 0},
{10, 8, -512, -65},
{10, 8, 1280, 1280},
{10, 12, -49152, 0},
{10, 12, -12288, -597},
{10, 12, 24576, 24576},
{10, 16, -983040, 0},
{10, 16, -229376, -6822},
{10, 16, 524288, 524288},
{10, 20, -18874368, 0},
{10, 20, -4718592, -52128},
{10, 20, 9437184, 9437184},
{10, 24, -352321536, 0},
{10, 24, -83886080, -563316},
{10, 24, 184549376, 184549376},
{10, 28, -6442450944, 0},
{10, 28, -1610612736, -3987362},
{10, 28, 3221225472, 3221225472},
{10, 32, -115964116992, 0},
{10, 32, -27917287424, -41940393},
{10, 32, 60129542144, 60129542144},
{12, 8, -2304, 0},
{12, 8, -768, -42},
{12, 8, 768, 768},
{12, 12, -49152, 0},
{12, 12, -18432, -230},
{12, 12, 12288, 12288},
{12, 16, -983040, 0},
{12, 16, -360448, -1659},
{12, 16, 262144, 262144},
{12, 20, -18874368, 0},
{12, 20, -7340032, -7549},
{12, 20, 4194304, 4194304},
{12, 24, -352321536, 0},
{12, 24, -134217728, -50797},
{12, 24, 83886080, 83886080},
{12, 28, -6442450944, 0},
{12, 28, -2550136832, -215380},
{12, 28, 1342177280, 1342177280},
{12, 32, -115964116992, 0},
{12, 32, -47244640256, -890358},
{12, 32, 21474836480, 21474836480},
{13, 8, -2304, 0},
{13, 8, -896, -27},
{13, 8, 512, 512},
{13, 12, -49152, 0},
{13, 12, -20480, -138},
{13, 12, 8192, 8192},
{13, 16, -983040, 0},
{13, 16, -425984, -640},
{13, 16, 131072, 131072},
{13, 20, -18874368, 0},
{13, 20, -7864320, -4350},
{13, 20, 3145728, 3145728},
{13, 24, -352321536, 0},
{13, 24, -150994944, -18634},
{13, 24, 50331648, 50331648},
{13, 28, -6442450944, 0},
{13, 28, -2818572288, -77613},
{13, 28, 805306368, 805306368},
{13, 32, -115964116992, 0},
{13, 32, -51539607552, -316670},
{13, 32, 12884901888, 12884901888},
{11, 8, -1792, 0},
{11, 8, -448, -31},
{11, 8, 256, 187},
{11, 8, 2304, 2304},
{11, 12, -40960, 0},
{11, 12, 0, 0},
{11, 12, 4096, 2994},
{11, 12, 49152, 49152},
{11, 16, -786432, 0},
{11, 16, 0, 0},
{11, 16, 98304, 80371},
{11, 16, 983040, 983040},
{11, 20, -15728640, 0},
{11, 20, 0, 0},
{11, 20, 1572864, 1285933},
{11, 20, 18874368, 18874368},
{11, 24, -301989888, 0},
{11, 24, 0, 0},
{11, 24, 25165824, 20574935},
{11, 24, 352321536, 352321536},
{11, 28, -5637144576, 0},
{11, 28, 0, 0},
{11, 28, 402653184, 329198966},
{11, 28, 6442450944, 6442450944},
{11, 32, -98784247808, 0},
{11, 32, 0, 0},
{11, 32, 8589934592, 7565989289},
{11, 32, 115964116992, 115964116992},
{14, 8, 0, 0},
{14, 8, 64, 65},
{14, 8, 128, 134},
{14, 12, 0, 0},
{14, 12, 1024, 1035},
{14, 12, 2048, 2145},
{14, 16, 0, 0},
{14, 16, 16384, 16560},
{14, 16, 32768, 34315},
{14, 20, 0, 0},
{14, 20, 262144, 264954},
{14, 20, 524288, 549033},
{14, 24, 0, 0},
{14, 24, 4194304, 4239271},
{14, 24, 8388608, 8784530},
{14, 28, 0, 0},
{14, 28, 67108864, 67828340},
{14, 28, 134217728, 140552476},
{14, 32, 0, 0},
{14, 32, 1073741824, 1085253432},
{14, 32, 2147483648, 2248839617},