{"id":1017,"date":"2021-04-22T14:22:26","date_gmt":"2021-04-22T14:22:26","guid":{"rendered":"https:\/\/konrad.burnik.org\/wordpress\/?p=1017"},"modified":"2023-04-27T19:59:14","modified_gmt":"2023-04-27T19:59:14","slug":"faster-complex-matrix-multiplication-via-split-complex-numbers","status":"publish","type":"post","link":"https:\/\/konrad.burnik.org\/wordpress\/faster-complex-matrix-multiplication-via-split-complex-numbers\/","title":{"rendered":"Faster Complex Matrix Multiplication via Split-Complex Numbers"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<p>Here is a nice application of <a href=\"https:\/\/en.wikipedia.org\/wiki\/Split-complex_number\">split-complex numbers<\/a>. Let <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-fce770904082aa0c0f003c821dcd83b1_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#90;&#95;&#49;&#32;&#61;&#32;&#65;&#32;&#43;&#32;&#105;&#32;&#66;\" title=\"Rendered by QuickLaTeX.com\" height=\"16\" width=\"97\" style=\"vertical-align: -3px;\"\/> and <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-d3ca283de3c1710cfdfb9f9ea913f3fd_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#90;&#95;&#50;&#32;&#61;&#32;&#67;&#32;&#43;&#32;&#105;&#32;&#68;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"99\" style=\"vertical-align: -3px;\"\/> be complex matrices.  Their product is defined as<\/p>\n\n\n\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 19px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-32eaf47e082be22601facb38e297fe93_l3.png\" height=\"19\" width=\"437\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91;&#32;&#90;&#95;&#49;&#32;&#90;&#95;&#50;&#32;&#61;&#32;&#40;&#65;&#32;&#43;&#32;&#105;&#32;&#66;&#41;&#32;&#40;&#67;&#32;&#43;&#32;&#105;&#68;&#41;&#32;&#61;&#32;&#40;&#65;&#32;&#67;&#32;&#45;&#32;&#66;&#32;&#68;&#41;&#32;&#43;&#32;&#105;&#40;&#65;&#68;&#32;&#43;&#32;&#66;&#67;&#41;&#32;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n\n\n\n<p>which requires 4 real matrix multiplications. Here I will show that we can do this with 3 real matrix multiplications by using split-complex numbers.<\/p>\n\n\n\n<p>First, by taking split-complex matrices <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-a49d2dd9f4f3b282a0f5d397345304e8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#87;&#95;&#49;&#32;&#61;&#32;&#65;&#32;&#43;&#32;&#106;&#32;&#66;\" title=\"Rendered by QuickLaTeX.com\" height=\"17\" width=\"105\" style=\"vertical-align: -4px;\"\/> and <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-274cb7d78ecd9f94e89b0abd333739c5_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#87;&#95;&#50;&#32;&#61;&#32;&#67;&#32;&#43;&#32;&#106;&#32;&#68;\" title=\"Rendered by QuickLaTeX.com\" height=\"16\" width=\"107\" style=\"vertical-align: -4px;\"\/> and rewriting them in basis <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-38597d514c4b273d519c055ba79758ba_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#123;&#92;&#105;&#111;&#116;&#97;&#44;&#32;&#92;&#105;&#111;&#116;&#97;&#94;&#42;&#92;&#125;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"44\" style=\"vertical-align: -5px;\"\/> as follows <\/p>\n\n\n\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 45px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-8c3417925a45d813ca352912a99e28da_l3.png\" height=\"45\" width=\"218\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#98;&#101;&#103;&#105;&#110;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125;&#87;&#95;&#49;&#32;&#38;&#32;&#61;&#32;&#40;&#65;&#43;&#66;&#41;&#32;&#92;&#105;&#111;&#116;&#97;&#32;&#43;&#32;&#40;&#65;&#45;&#66;&#41;&#32;&#92;&#105;&#111;&#116;&#97;&#94;&#42;&#32;&#92;&#92;&#87;&#95;&#50;&#32;&#38;&#61;&#32;&#40;&#67;&#43;&#68;&#41;&#32;&#92;&#105;&#111;&#116;&#97;&#32;&#43;&#32;&#40;&#67;&#45;&#68;&#41;&#32;&#92;&#105;&#111;&#116;&#97;&#94;&#42;&#92;&#101;&#110;&#100;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n\n\n\n<p>we have<\/p>\n\n\n\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 19px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-748b3ff960ce4c543700472da678c920_l3.png\" height=\"19\" width=\"368\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91;&#32;&#87;&#95;&#49;&#32;&#87;&#95;&#50;&#32;&#61;&#32;&#40;&#65;&#43;&#66;&#41;&#40;&#67;&#43;&#68;&#41;&#32;&#92;&#105;&#111;&#116;&#97;&#32;&#43;&#32;&#40;&#65;&#45;&#66;&#41;&#40;&#67;&#45;&#68;&#41;&#32;&#92;&#105;&#111;&#116;&#97;&#94;&#42;&#32;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n\n\n\n<p>which requires only 2 real matrix multiplications. This all follows from my <a href=\"https:\/\/konrad.burnik.org\/wordpress\/split-complex-numbers-revisited\/\">previous post<\/a>.<\/p>\n\n\n\n<p>Let us now define <br><br><p class=\"ql-center-displayed-equation\" style=\"line-height: 78px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-c3e1f07c93774da2e6379c301e656061_l3.png\" height=\"78\" width=\"189\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#98;&#101;&#103;&#105;&#110;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125;&#88;&#32;&#38;&#32;&#58;&#61;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#49;&#125;&#123;&#50;&#125;&#32;&#40;&#65;&#32;&#43;&#32;&#66;&#41;&#32;&#40;&#67;&#32;&#43;&#32;&#68;&#41;&#32;&#92;&#92;&#32;&#89;&#32;&#38;&#32;&#58;&#61;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#49;&#125;&#123;&#50;&#125;&#32;&#40;&#65;&#32;&#45;&#32;&#66;&#41;&#32;&#40;&#67;&#32;&#45;&#32;&#68;&#41;&#46;&#92;&#101;&#110;&#100;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n\n\n\n<p>We have<br><p class=\"ql-center-displayed-equation\" style=\"line-height: 19px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-7a3f992199eea42f382a6db84fe7cfce_l3.png\" height=\"19\" width=\"238\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91;&#32;&#87;&#95;&#49;&#32;&#87;&#95;&#50;&#32;&#61;&#32;&#40;&#88;&#32;&#43;&#32;&#89;&#32;&#41;&#32;&#43;&#32;&#106;&#32;&#40;&#88;&#32;&#45;&#32;&#89;&#41;&#46;&#32;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n\n\n\n<p>But now, since<\/p>\n\n\n\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 19px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-0b719452fde49b95f583eb60e5343ee1_l3.png\" height=\"19\" width=\"286\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91;&#32;&#87;&#95;&#49;&#32;&#87;&#95;&#50;&#32;&#61;&#32;&#40;&#65;&#67;&#32;&#43;&#32;&#66;&#68;&#41;&#32;&#43;&#32;&#106;&#32;&#40;&#65;&#68;&#32;&#43;&#32;&#66;&#67;&#41;&#32;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p> then by comparison <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-7af2b2af74bd4ff8aa1b8d6ce56864aa_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#65;&#67;&#32;&#43;&#32;&#66;&#68;&#32;&#61;&#32;&#88;&#32;&#43;&#32;&#89;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"154\" style=\"vertical-align: -2px;\"\/> and <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-aec207e18102dbc5cb0ed8fdab21c306_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#65;&#68;&#32;&#43;&#32;&#66;&#67;&#32;&#61;&#32;&#88;&#32;&#45;&#32;&#89;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"154\" style=\"vertical-align: -2px;\"\/>.<\/p>\n\n\n\n<p>Finally, from this and the fact <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-a823ebca75c365cb39bb6ab535bf3852_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#65;&#67;&#32;&#45;&#32;&#66;&#68;&#32;&#61;&#32;&#88;&#32;&#43;&#32;&#89;&#32;&#45;&#32;&#50;&#32;&#66;&#68;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"214\" style=\"vertical-align: -2px;\"\/> we have <\/p>\n\n\n\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 19px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-86267cdc900c1401472974d7c07369d9_l3.png\" height=\"19\" width=\"280\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91;&#90;&#95;&#49;&#32;&#90;&#95;&#50;&#32;&#61;&#32;&#40;&#88;&#32;&#43;&#32;&#89;&#32;&#45;&#32;&#50;&#32;&#66;&#68;&#41;&#32;&#43;&#32;&#105;&#40;&#88;&#32;&#45;&#32;&#89;&#41;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p> which requires only 3 real matrix multiplications, namely <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-a9c9d2e6baaee8b3014cc0ab2496bed9_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#40;&#65;&#43;&#66;&#41;&#40;&#67;&#43;&#68;&#41;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"126\" style=\"vertical-align: -5px;\"\/>, <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-3ac85d6ee6391fc967b1967e345feeae_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#40;&#65;&#45;&#66;&#41;&#40;&#67;&#45;&#68;&#41;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"126\" style=\"vertical-align: -5px;\"\/> and <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/konrad.burnik.org\/wordpress\/wp-content\/ql-cache\/quicklatex.com-edd0d9c0b3d5b12ed58d289fda3d1332_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#66;&#68;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"29\" style=\"vertical-align: 0px;\"\/>.<\/p>\n\n\n\n<p><em>EDIT: A simple implementation of this approach can be found <a href=\"https:\/\/konrad.burnik.org\/wordpress\/implementation-of-faster-complex-matrix-multiplication-via-split-complex-numbers\/\">here<\/a>.<\/em><\/p>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style3 like-1017 jlk' href='javascript:void(0)' data-task='like' data-post_id='1017' data-nonce='4652e27883' rel='nofollow'><img class='wti-pixel' src='https:\/\/konrad.burnik.org\/wordpress\/wp-content\/plugins\/wti-like-post\/images\/pixel.gif' title='Like' \/><span class='lc-1017 lc'>+1<\/span><\/a><\/div><div class='action-unlike'><a class='unlbg-style3 unlike-1017 jlk' href='javascript:void(0)' data-task='unlike' data-post_id='1017' data-nonce='4652e27883' rel='nofollow'><img class='wti-pixel' src='https:\/\/konrad.burnik.org\/wordpress\/wp-content\/plugins\/wti-like-post\/images\/pixel.gif' title='Unlike' \/><span class='unlc-1017 unlc'>0<\/span><\/a><\/div> <\/div> <div class='status-1017 status align-left'><\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>Here is a nice application of split-complex numbers. Let and be complex matrices. Their product is defined as &nbsp; &nbsp; which requires 4 real matrix multiplications. Here I will show that we can do this with 3 real matrix multiplications by using split-complex numbers. First, by taking split-complex matrices and and rewriting them in basis [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_s2mail":"yes","footnotes":""},"categories":[9],"tags":[],"class_list":["post-1017","post","type-post","status-publish","format-standard","hentry","category-hyperbolic-numbers"],"_links":{"self":[{"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/posts\/1017","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/comments?post=1017"}],"version-history":[{"count":51,"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/posts\/1017\/revisions"}],"predecessor-version":[{"id":1241,"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/posts\/1017\/revisions\/1241"}],"wp:attachment":[{"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/media?parent=1017"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/categories?post=1017"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/konrad.burnik.org\/wordpress\/wp-json\/wp\/v2\/tags?post=1017"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}