55 Additions Suffice for 3x3 Matrix Multiplication at Rank 23
Dit artikel presenteert een nieuw rang-23 algoritme voor matrixvermenigvuldiging dat het vereiste aantal optellingen vermindert tot 55 (totaal 78 scalaire operaties), waardoor het de vorige state-of-the-art van 56 optellingen verbetert terwijl de geldigheid over elke associatieve ring behouden blijft door middel van een constructie gebaseerd op Perminovs tensor en een geoptimaliseerd lineair circuit.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een meesterkok bent die een enorme, complexe taart probeert te bakken. Het recept vereist dat je tientallen ingrediënten op zeer specifieke manieren met elkaar mengt. In de wereld van computers is het "mengen" van ingrediënten als het vermenigvuldigen van getallen, en het "bakken van de taart" is als het vermenigvuldigen van twee rasters van getallen (matrices) om een nieuw resultaat te krijgen. Een lange tijd dachten wiskundigen dat de enige manier om dit te doen de standaard, langzame methode was: elk enkel getal vermenigvuldigen en ze vervolgens bij elkaar optellen. Maar in de jaren 60 ontdekte een genie genaamd Strassen een magische truc. Hij realiseerde zich dat als je de volgorde van het mengen aanpast, je wat zwaar werk kunt overslaan. Je kunt dezelfde heerlijke taart krijgen met minder "vermenigvuldigingen", wat de duurste en meest tijdrovende stappen in de keuken zijn.
Er is echter een addertje onder het gras. Hoewel je kunt besparen op de dure vermenigvuldigingen, moet je vaak meer "optellingen" (mengkommen) doen om de ingrediënten klaar te maken. Denk er maar zo over na: in plaats van alleen bloem in een kom te gieten, moet je misschien ingrediënten hakken, roeren en vouwen in een zeer specifieke dans voordat je ze kunt combineren. Het doel is om de perfecte dansroutine te vinden die zo min mogelijk stappen gebruikt. Dit artikel waar je over gaat lezen, gaat over een team dat een nieuwe, iets efficiëntere dans heeft gevonden voor een specifiek type taart: een 3x3 matrix. Ze hebben de methode niet veranderd voor het aantal zware lifts (vermenigvuldigingen), maar ze hebben het aantal mengstappen (optellingen) verminderd door één stap te besparen, wat een piepkleine maar significante hoeveelheid werk wegneemt.
De Nieuwe Recordbrekende Dans
Dit artikel, geschreven door Samurdhi Karunaratne en Anushka Idamekorala van Logical AI, kondigt een nieuw record aan voor het vermenigvuldigen van twee 3x3 rasters met getallen. Ze hebben een manier gevonden om dit te doen met slechts 55 optellingen en 23 vermenigvuldigingen.
Om te begrijpen waarom dit een grote zaak is, stel je het vorige beste recept voor. De huidige kampioen, gecreëerd door een onderzoeker genaamd Sun, vereiste 56 optellingen. De auteurs van dit artikel hebben niet een compleet nieuwe manier uitgevonden om matrices te vermenigvuldigen; in plaats daarvan hebben ze een bestaand, publiek recept (gemaakt door Perminov) dat 58 optellingen gebruikte, en een eerdere versie met 59 optellingen, geoptimaliseerd door de "voorbereidingsstappen" aan te passen. Ze realiseerden zich dat ze door de manier waarop de ingrediënten vooraf werden gemengd te veranderen, het totale aantal optiestappen konden terugbrengen naar 55.
Hier is hoe hun nieuwe "keuken" werkt, onderverdeeld in drie eenvoudige fasen:
- Het voorbereiden van de linker ingrediënten: Voordat ze gaan mengen, nemen ze het eerste raster met getallen (laten we het het "Linker" raster noemen) en voeren ze 13 eenvoudige optel- of aftrekstappen uit om 23 speciale mengsels te maken.
- Het voorbereiden van de rechter ingrediënten: Ze doen hetzelfde voor het tweede raster met getallen (het "Rechter" raster), waarbij ze 14 stappen gebruiken om de 23 speciale mengsels te maken.
- Het Grote Mengsel en de Finale Assemblage: Ze vermenigvuldigen de bijbehorende mengsels van de Linker- en de Rechter-rasters (in totaal 23 vermenigvuldigingen). Daarna nemen ze die 23 resultaten en voeren ze nog eens 28 optiestappen uit om het uiteindelijke 3x3 resultaat samen te stellen.
Wanneer je de voorbereidingswerkzaamheden (13 + 14) en de finale assemblage (28) bij elkaar optelt, kom je precies op 55 optellingen. Dit is één minder dan de vorige beste, wat het de meest efficiënte bekende methode maakt voor deze specifieke berekening.
Waarom Dit Er Toe Doet (en Wat Het Niet Is)
Je vraagt je misschien af: "Is dit de absoluut beste manier om dit te doen?" De auteurs zijn zeer voorzichtig om te zeggen: Nee, niet noodzakelijkerwijs. Ze hebben bewezen dat voor deze specifieke rangschikking van ingrediënten die zij hebben gekozen, 55 de beste is die je kunt doen. Ze hebben een rigoureuze wiskundige zoektocht gebruikt om te bewijzen dat je niet met minder stappen weg kunt komen voor dit specifieke recept. Ze geven echter toe dat er een compleet ander recept (een andere rangschikking van ingrediënten) zou kunnen zijn dat zelfs sneller is. Ze hebben dat nog niet gevonden, en ze beweren niet het hele mysterie van matrixvermenigvuldiging voor altijd te hebben opgelost.
Ze verduidelijken ook dat dit niet zomaar een gelukkige gok of een computersimulatie is die fout kan zijn. Ze hebben een "certificaat" van waarheid geleverd. Ze hebben het volledige stapsgewijze recept (een "straight-line program" genoemd) opgeschreven en het door meerdere onafhankelijke computerprogramma's (geschreven in Python en Node.js) gehaald om elke van de 729 wiskundige regels te controleren die waar moeten zijn voor het recept om te werken. Elke controle slaagde. Dit betekent dat de wiskunde solide is en dat het recept perfect werkt voor elk soort getallensysteem, zelfs de vreemde systemen waar de volgorde van vermenigvuldiging uitmaakt.
De AI Achter het Gordijn
Een interessante wending in dit verhaal is hoe het recept is gevonden. De auteurs onthullen dat een menselijke onderzoeker een AI-systeem (specifiek een agent die gebruikmaakt van OpenAI's GPT-5.6 Sol) heeft begeleid bij de ontdekking. De mens stelde het doel vast: "Vind een manier om het record van 56 optellingen te verbreken." De AI verkende vervolgens het landschap van bestaande recepten, vond de oudere 58-optellingen versie van Perminov, en realiseerde zich dat hij door de voorbereidingsstappen aan te passen, drie extra stappen kon besparen. De AI controleerde vervolgens zijn eigen werk, schreef de code en verifieerde de wiskunde. Het is een perfect voorbeeld van hoe mens en machine samenwerken: de mens leverde de richting en het "waarom", terwijl de AI de zware taken afhandelde door door miljo's mogelijkheden te zoeken naar het "hoe".
Uiteindelijk is dit artikel een kleine maar precieze overwinning. Het laat zien dat zelfs in een gebied dat zo oud is als matrixvermenigvuldiging, er nog steeds kleine, verborgen efficiënties te ontdekken zijn als je goed kijkt. Het is alsover vind je een nieuw, iets korter pad door een bekend bos. Je komt nog steeds op dezelfde plek uit, maar je komt er met net één stap minder.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.