Knowledge

Talk:Toom–Cook multiplication

Source 📝

609:
and m, m<=k. i think we can say that after doing thoese polynomials product for the x0=2 interpolation point, the terms obtained can b spilt in the group of first most significant powers m group n the rest: we r interested in this first to create the triangular system of equations... the remained m (m as for complexity order) terms need to b excluded n we might use a queue of memorized results for that, able to b maintained in some recurent semanthic loop to fulfill algo needs to select first m terms... we might also need to consider this discussion 4 the last m trunced coetients from those k , etc, in order to obtain 2*k-1 equations needed for the triangular system of linear equations... it is expected nearle O(N) complexity in time , n additional O(N) mem used :) Florin Matei, Romania
84: 74: 53: 162: 22: 598:
the sum of the first k desired coetients of the result n another term that can b kept in some recurent loop, in order to successfully compute the disered sum of first k coetients of the result... it works either 4 first k or the last k so we could compute all mul result coetients its O(n) multiplied just by a constant that is <10 lets say
608:
hi, i think that for the general k*k Toom-Cook approach we might use x0=2 point of interpolation 4 the following idea: lets say we tipically interpolate some trunced first polynomial with the trunced coresponding polynomial of its own. Practicaly, from those K and k coetients we tipicaly keep first m
582:
ok, the Romanian cowboy is just suggesting that we could use more than 2*(n)-1 muls , evn 4*n muls n keeping a decent sampling point like x0=1 or x0=2 in order to make linear the solving of system of equations... in case x0=1 we might not evn need recursivity... n alright, its abt sub-polynomial form
509:
ok, i also think that basically aplying P(1) n P(-1) recurently might b helpfull to fast solve 4 k=2^h partitions... first we got the sums 4 odd/evn ranks coetients... then aply to odds n evns n so on till bottom coetients which r the desired ones: the evns 4 example is obtaines from split evn n evn
597:
considerring we have 2 long integer 4 multiplication, long like at least 100 Bytes each, we first divide the two integers in M parts each forming then products of first K termes summed (multiplied with the corespondent from the second number sum of first k coetients) in the computed product appears
492:
main creative idea is to use O(k) equations that can b written directly in the coetients that r we looking for practicaly use special pondered sum of products from the term spitting a to term spitting b where a n b are at least one 0 or k-1 (for k*k problem ), the terms coetients let them be 2^i or
446:
Why were the Vandermonde-like evaluation and interpolation matrices chosen to have ascending degree along the rows in the worked example? This is the opposite of the convention used by the Bodrato paper that is often referred to in the very same example. Was it more didactic this way? It makes it a
531:
assuming we have to multiply (A1;A2;A3)*(B1;B2;B3) we can plan this Karatsuba style like this: (A1;A2)*(B1;B2) , (A3)*(B3) n (A1;(A2+A3))*(B1;(B2+B3))... it will b a mistake to first do the additions (A2+A3) n (B2+B3) so instead of computing "one mul" will compute "3 muls" but taking advantages of
567:
well, we can c the polynomial form in many ways we can c sub-polynomial forms and i think, if we wanna get off with that coetient that slows the algo, i think its better to stay with x0=2 point of interpolation but 4 more than one sub-polynomial form , finding practically in linear time the whole
789:
But "Toom-1" looks like a purely theoretical extension of Toom's idea to me: it doesn't cut the problem down, but merely replaces it with itself. Unlike the others, it doesn't form a useful algorithm, but would result in infinite recursion if implemented. Yet, section 2.1 claims that it
430:
These are all great questions - the existing example was sparse and omitted a lot of detail about how the algorithm works. I hope the new explanation makes more sense - please take a look and let me know if there's anything you still don't understand.
785:
Toom-3 is of course the logical extension of Toom-2, useful for bigger numbers of approximately the same length, and Toom-2.5 is a version optimized for numbers where one is significantly longer than the other but less than twice as long.
405:
What, exactly, are these operations anyway? Well, what they are isn't that hard to figure out, but why replace w3 with a value calculated from w3 and w1? Why not create a new set of variables instead, to avoid confusion over which w3 is
793:
Which means that "Toom-1" is like 1 in comparison to primes; unlike the rest, it doesn't reduce a problem any further: running Toom-1 is a non-operation just like dividing an integer by 1. In both cases, any input is a fixed point.
633:
If you use the derivative p'(0) instead of p(-2) you get a simpler matrix inversion, for the price of reduction to 6 multiplications instead of 5. This is, because the derivative of a product needs the computation of two products:
493:
2^(-i) we can observe that there is possibility of forming entirely a system of equation that works directly in desired coetients maybe this might b helfull to solve faster the equation system but idk how, at least not yet, sorry
344:
I'd like to propose renaming this article to "Toom-Cook multiplication" and generalize it a bit. I've never renamed an article, and don't know what problems that might cause from external sites, so I'm not going to do it myself.
532:
past computed value there is only one value to multiply (A1+A2+A3)*(B1+B2+B3), making a total of 5 muls just like Toom -Cook, but faster... n i think it might b generalised 4 n*n plan with 2*n-1 muls... Florin Matei , Romania
351:
In addition, I believe that it should be noted that any computer implementation of this algorithm (and who's doing Toom-Cook by hand?) will use a power-of-two base, instead of the base 10 used in the article.--
777:
IMO, Toom-1.5 is some kind of long multiplication, except that it doesn't immediately subdivide matters into into MxN elementary multiplications. Instead, it cuts the problem in half. Still, close enough.
781:
Toom-2 is basically a systematic way to derive Karatsuba's algorithm, instead of matching coefficients by brute force, which would get impractical beyond 3 even using computers. No problem there, either.
736: 348:
My main objection is that the Toom-Cook algorithm doesn't just specify a three-way split of the numbers; it's more general than that. The article makes it sound like three-way is the only way.
140: 753:
I haven't worked out what you're up to but I don't see the point. The whole point of Toom-Cook is to cut down the number of multiplications. The constants divisions are much faster. Anyway
843: 790:"degenerates to long multiplication" — which a viable algorithm surely would, but only because such algorithm wouldn't resort to actual Toom-1 for any input. 510:
and odds n odds: solving 4 k=2^h coetiens to b found in some O(k) or O(k*log(k)) operations with k groups of linear adds or subs .hoping this one is working
385:"To compute c(x) = a(x) * b(x), we evaluate the two polynomials a and b in five points, and multiply the results, for our example we perform the following:" 838: 130: 833: 196: 106: 546:
the possible key of approaching this could b forcing B2=B3, one after another im starting to b not such pleased of my own, here , sorry :)
454: 797: 610: 584: 569: 547: 533: 511: 496: 328: 414:
Right... Again, how were the order et c here chosen? Obviously it depends on the choices made in the first and second steps, but how?
97: 58: 244: 180: 228: 172: 637: 260: 324: 190: 33: 743: 738:. Nonetheless this seems to be a reasonable approach to me. Does someone know whether and where this was explored? 486:
ideas that might help abt that coetient that slows O() -- possible emprovements abt solving the system of equations
276: 212: 458: 21: 801: 186: 739: 614: 588: 573: 551: 537: 515: 500: 176: 238: 421: 222: 39: 254: 83: 450: 234: 363:
This article desperately needs to be spruced up. I removed the broken example and added some (ok, a
270: 206: 754: 305:
C1=A1B1 C2=A1B1+A2B1 <===***should be A1B2+A2B1 C3=A2B2 <===***should be A1B3+A2B2+A3B1
218: 250: 105:
on Knowledge. If you would like to participate, please visit the project page, where you can join
89: 73: 52: 818: 805: 766: 747: 618: 592: 577: 555: 541: 519: 504: 462: 435: 424: 266: 202: 313: 815: 762: 827: 432: 352: 299:
c=ab=C1104w+C2103w+C3102w+C410w+C5 which can be represented as c=(C1,C2,C3,C4,C5)
332: 102: 812: 602:
Toom - Cook idea and some triangular system of linear equations, easy to solve
391:
What does c(1/0) mean? It can't possibly mean c(x) where x is 1 divided by 0?
79: 811:
I concur. The claims about “Toom-1” in the article do not really make sense.—
171:
to the subject of this article. Relevant policies and guidelines may include
758: 156: 15: 469:
Original research by 93.118.212.93 (Florin Matei), collapsed
370:
Still need someone to write a working example for Toom-3.
169:
contributors may be personally or professionally connected
402:
How is this solved by performing a number of operations?
561:
ok, i think ill stay with idea of using 2^i as a factor
525:
Ideas that claim to b faster than Toom-Cook -- lets see
323:
Or you could just make the change yourself. Check out
731:{\displaystyle r'(0)=p'(0)\cdot q(0)+p(0)\cdot q'(0)} 640: 583:
either... the rest is Good Luck 2 You, yankees!! LOL
388:
How were the points in this example chosen, and why?
101:, a collaborative effort to improve the coverage of 293: 730: 442:Evaluation and Interpolation Vandermonde Matrices 309:Where to report the mistake? here? Sheau Ching. 757:already reduces four multiplications to three. 8: 19: 473: 47: 639: 396:"Then solve the interpolation problem:" 476: 340:Proposal to rename / generalize article 49: 381:I'm trying to understand the example. 568:group of wanted coetients ... ok ;)) 447:bit confusing when reading the two. 411:"The result can be recomposed with:" 7: 844:Articles with connected contributors 95:This article is within the scope of 312:Yes, this is where to put mistakes. 38:It is of interest to the following 14: 839:Low-priority mathematics articles 115:Knowledge:WikiProject Mathematics 834:Start-Class mathematics articles 773:What would "Toom-1" actually be? 160: 118:Template:WikiProject Mathematics 82: 72: 51: 20: 135:This article has been rated as 725: 719: 705: 699: 690: 684: 675: 669: 655: 649: 294:http://www.wikipedia.org/Toom3 1: 463:20:59, 20 December 2011 (UTC) 425:15:58, 7 September 2007 (UTC) 109:and see a list of open tasks. 520:19:33, 2 February 2013 (UTC) 505:15:26, 2 February 2013 (UTC) 436:01:29, 14 October 2007 (UTC) 359:This article needs your help 806:21:53, 7 October 2020 (UTC) 767:12:59, 11 August 2013 (UTC) 748:10:33, 11 August 2013 (UTC) 629:Toom-Cook using derivatives 399:What interpolation problem? 860: 478:unproven wild speculations 819:08:08, 14 June 2024 (UTC) 593:12:37, 9 March 2013 (UTC) 578:16:17, 7 March 2013 (UTC) 556:11:53, 4 March 2013 (UTC) 542:11:03, 4 March 2013 (UTC) 134: 67: 46: 355:23:32, 3 Oct 2004 (UTC) 335:03:13, Oct 2, 2003 (UTC) 316:03:09, 2 Oct 2003 (UTC) 292:spotted some mistake in 167:The following Knowledge 141:project's priority scale 619:03:20, 9 May 2013 (UTC) 98:WikiProject Mathematics 732: 28:This article is rated 733: 181:neutral point of view 638: 173:conflict of interest 121:mathematics articles 755:Karatsuba algorithm 728: 325:How to edit a page 187:Jonastyleranderson 90:Mathematics portal 34:content assessment 740:HenningThielemann 625: 624: 453:comment added by 285: 284: 155: 154: 151: 150: 147: 146: 851: 737: 735: 734: 729: 718: 668: 648: 474: 465: 367:of) commentary. 288:Untitled section 164: 163: 157: 123: 122: 119: 116: 113: 92: 87: 86: 76: 69: 68: 63: 55: 48: 31: 25: 24: 16: 859: 858: 854: 853: 852: 850: 849: 848: 824: 823: 775: 711: 661: 641: 636: 635: 631: 626: 479: 471: 448: 444: 379: 361: 342: 290: 161: 120: 117: 114: 111: 110: 88: 81: 61: 32:on Knowledge's 29: 12: 11: 5: 857: 855: 847: 846: 841: 836: 826: 825: 822: 821: 774: 771: 770: 769: 727: 724: 721: 717: 714: 710: 707: 704: 701: 698: 695: 692: 689: 686: 683: 680: 677: 674: 671: 667: 664: 660: 657: 654: 651: 647: 644: 630: 627: 623: 622: 606: 605: 603: 565: 564: 562: 529: 528: 526: 490: 489: 487: 481: 480: 477: 472: 470: 467: 455:178.208.131.82 443: 440: 439: 438: 418: 417: 416: 415: 409: 408: 407: 403: 400: 394: 393: 392: 389: 378: 375: 373: 360: 357: 341: 338: 337: 336: 319: 308: 298: 289: 286: 283: 282: 281: 280: 264: 248: 232: 216: 200: 165: 153: 152: 149: 148: 145: 144: 133: 127: 126: 124: 107:the discussion 94: 93: 77: 65: 64: 56: 44: 43: 37: 26: 13: 10: 9: 6: 4: 3: 2: 856: 845: 842: 840: 837: 835: 832: 831: 829: 820: 817: 814: 810: 809: 808: 807: 803: 799: 798:84.148.246.92 795: 791: 787: 783: 779: 772: 768: 764: 760: 756: 752: 751: 750: 749: 745: 741: 722: 715: 712: 708: 702: 696: 693: 687: 681: 678: 672: 665: 662: 658: 652: 645: 642: 628: 621: 620: 616: 612: 611:93.118.212.93 604: 601: 600: 599: 595: 594: 590: 586: 585:93.118.212.93 580: 579: 575: 571: 570:93.118.212.93 563: 560: 559: 558: 557: 553: 549: 548:93.118.212.93 544: 543: 539: 535: 534:93.118.212.93 527: 524: 523: 522: 521: 517: 513: 512:93.118.212.93 507: 506: 502: 498: 497:93.118.212.93 494: 488: 485: 484: 483: 482: 475: 468: 466: 464: 460: 456: 452: 441: 437: 434: 429: 428: 427: 426: 423: 422:85.228.39.223 413: 412: 410: 404: 401: 398: 397: 395: 390: 387: 386: 384: 383: 382: 376: 374: 371: 368: 366: 358: 356: 354: 349: 346: 339: 334: 330: 326: 322: 321: 320: 317: 315: 310: 306: 303: 300: 296: 295: 287: 278: 275: 272: 268: 265: 262: 259: 256: 252: 249: 246: 243: 240: 236: 233: 230: 227: 224: 220: 217: 214: 211: 208: 204: 201: 198: 195: 192: 188: 185: 184: 182: 178: 177:autobiography 174: 170: 166: 159: 158: 142: 138: 132: 129: 128: 125: 108: 104: 100: 99: 91: 85: 80: 78: 75: 71: 70: 66: 60: 57: 54: 50: 45: 41: 35: 27: 23: 18: 17: 796: 792: 788: 784: 780: 776: 632: 607: 596: 581: 566: 545: 530: 508: 495: 491: 449:— Preceding 445: 419: 380: 372: 369: 364: 362: 350: 347: 343: 318: 314:Vancouverguy 311: 307: 304: 301: 297: 291: 273: 257: 241: 225: 209: 193: 168: 137:Low-priority 136: 96: 62:Low‑priority 40:WikiProjects 377:The example 112:Mathematics 103:mathematics 59:Mathematics 30:Start-class 828:Categories 235:MikeVasmer 451:unsigned 433:Dcoetzee 302:while: 277:contribs 261:contribs 245:contribs 229:contribs 219:Janswart 213:contribs 197:contribs 353:Eliasen 329:be bold 251:Rnskand 139:on the 333:Angela 179:, and 36:scale. 406:used? 813:Emil 802:talk 763:talk 759:Dmcq 744:talk 615:talk 589:talk 574:talk 552:talk 538:talk 516:talk 501:talk 459:talk 327:and 271:talk 267:Erez 255:talk 239:talk 223:talk 207:talk 203:Onty 191:talk 365:lot 183:. 131:Low 830:: 816:J. 804:) 765:) 746:) 709:⋅ 679:⋅ 617:) 591:) 576:) 554:) 540:) 518:) 503:) 461:) 331:! 175:, 800:( 761:( 742:( 726:) 723:0 720:( 716:′ 713:q 706:) 703:0 700:( 697:p 694:+ 691:) 688:0 685:( 682:q 676:) 673:0 670:( 666:′ 663:p 659:= 656:) 653:0 650:( 646:′ 643:r 613:( 587:( 572:( 550:( 536:( 514:( 499:( 457:( 420:/ 279:) 274:· 269:( 263:) 258:· 253:( 247:) 242:· 237:( 231:) 226:· 221:( 215:) 210:· 205:( 199:) 194:· 189:( 143:. 42::

Index


content assessment
WikiProjects
WikiProject icon
Mathematics
WikiProject icon
icon
Mathematics portal
WikiProject Mathematics
mathematics
the discussion
Low
project's priority scale
conflict of interest
autobiography
neutral point of view
Jonastyleranderson
talk
contribs
Onty
talk
contribs
Janswart
talk
contribs
MikeVasmer
talk
contribs
Rnskand
talk

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.