การคูณเมทริกซ์โซ่และการยกกำลัง
ถ้าฉันมีเมทริกซ์และสองขนาดและตามลำดับและต้องการคำนวณมันมีประสิทธิภาพมากกว่าที่จะเขียนนิพจน์ใหม่เป็นและเพียงแล้วประเมินตัวเลขเพราะเป็นมิติแต่เป็นของมิติ2B 1,000 × 2 2 × 1,000 ( A B ) 5,000 A ( B A ) 4999 B A B 1,000 × 1000 B A 2 × 2AAABBB1000×21000×21000\times22×10002×10002\times1000(AB)5000(AB)5000(AB)^{5000}A(BA)4999BA(BA)4999BA(BA)^{4999}BABABAB1000×10001000×10001000\times1000BABABA2×22×22\times2 ฉันต้องการแก้ปัญหานี้โดยทั่วไป มีอัลกอริธึมที่มีประสิทธิภาพพอสมควร (ไม่ใช่แรงเดรัจฉาน) เพื่อปรับการแสดงออกที่มี: ตัวแปรเมทริกซ์อิสระของขนาดที่รู้จัก ผลิตภัณฑ์ของ subexpressions โดยพลการ subexpressions โดยพลการยกกำลังธรรมชาติ ... เพื่อที่จะใช้เวลาน้อยที่สุดในการประเมินตัวเลขหลังจากการแทนที่ตัวแปรเมทริกซ์อิสระด้วยค่าเมทริกซ์คอนกรีต? ห่วงโซ่คูณเมทริกซ์ปัญหาเป็นกรณีพิเศษของปัญหาของฉัน แก้ไข: นี่คือคำตอบเบื้องต้น ดูเหมือนว่าเหมาะสมกับฉัน แต่ฉันก็ไม่มีข้อพิสูจน์ว่าถูกต้อง หากปรากฎว่าถูกต้องฉันยังคงสนใจในการพิสูจน์ (หากมันไม่ถูกต้องแน่นอนโปรดแก้ไขให้ถูกต้อง) สำหรับทุกผลิตภัณฑ์ที่ยกระดับพลังงานให้พูดว่าให้พิจารณาการเปลี่ยนรูปแบบวนรอบของปัจจัยทั้งหมด:(A1A2…Ak)n(A1A2…Ak)n(A_1 A_2 …