<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 12.2.1 (20241206.2353)
 -->
<!-- Title: Cosine&#45;Sine (CS) decomposition Pages: 1 -->
<!--zoomable 529 -->

<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>

<defs>
  <circle id="rim" cx="0" cy="0" r="7"/>
  <circle id="rim2" cx="0" cy="0" r="3.5"/>
  <g id="zoomPlus">
    <use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/></use>
    <path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
  </g>
  <g id="zoomMin">
    <use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/></use>
    <path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
  </g>
  <g id="arrowUp" transform="translate(30 24)">
    <use xlink:href="#rim"/>
    <path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
  </g>
  <g id="arrowRight" transform="rotate(90) translate(36 -43)">
    <use xlink:href="#rim"/>
    <path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
  </g>
  <g id="arrowDown" transform="rotate(180) translate(-30 -48)">
    <use xlink:href="#rim"/>
    <path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
  </g>
  <g id="arrowLeft" transform="rotate(270) translate(-36 17)">
    <use xlink:href="#rim"/>
    <path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
  </g>
  <g id="resetDef">
    <use xlink:href="#rim2" fill="#404040"><set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/></use>
  </g>
</defs>
<script type="application/ecmascript">
var viewWidth = 488;
var viewHeight = 529;
var sectionId = 'dynsection-0';
</script>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>Cosine&#45;Sine (CS) decomposition</title>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="../../dc/d7c/group__bbcsd.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="456,-521.25 370.25,-521.25 370.25,-502 456,-502 456,-521.25"/>
<text text-anchor="middle" x="413.12" y="-507.75" font-family="Helvetica,sans-Serif" font-size="10.00">bbcsd: &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;??</text>
</a>
</g>
</g>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="310.25,-270.25 151.75,-270.25 151.75,-251 310.25,-251 310.25,-270.25"/>
<text text-anchor="middle" x="231" y="-256.75" font-family="Helvetica,sans-Serif" font-size="10.00">Cosine&#45;Sine (CS) decomposition</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2" class="edge">
<title>Node1&#45;&gt;Node3</title>
<path fill="none" stroke="black" d="M236.15,-281.46C246.36,-327.1 277.06,-436.42 346.25,-493.62 353.01,-499.22 361.37,-503.08 369.83,-505.74"/>
<polygon fill="black" stroke="black" points="239.61,-280.9 234.11,-271.85 232.76,-282.35 239.61,-280.9"/>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="../../d3/d10/group__lapmr.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="479.25,-484.25 347,-484.25 347,-465 479.25,-465 479.25,-484.25"/>
<text text-anchor="middle" x="413.12" y="-470.75" font-family="Helvetica,sans-Serif" font-size="10.00">lapmr: &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;permute rows</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node13 -->
<g id="edge12" class="edge">
<title>Node1&#45;&gt;Node13</title>
<path fill="none" stroke="black" d="M238.21,-281.4C251.31,-321.58 285.67,-410.1 346.25,-456.62 350.39,-459.8 355.05,-462.42 359.93,-464.57"/>
<polygon fill="black" stroke="black" points="241.6,-280.52 235.27,-272.02 234.92,-282.61 241.6,-280.52"/>
</g>
<!-- Node14 -->
<g id="Node000014" class="node">
<title>Node14</title>
<g id="a_Node000014"><a xlink:href="../../d0/dcb/group__lapmt.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="477.75,-447.25 348.5,-447.25 348.5,-428 477.75,-428 477.75,-447.25"/>
<text text-anchor="middle" x="413.12" y="-433.75" font-family="Helvetica,sans-Serif" font-size="10.00">lapmt: &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;permute cols</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node14 -->
<g id="edge13" class="edge">
<title>Node1&#45;&gt;Node14</title>
<path fill="none" stroke="black" d="M241.15,-280.96C257.39,-314.72 294.48,-382.23 346.25,-418.62 351.41,-422.25 357.26,-425.19 363.29,-427.58"/>
<polygon fill="black" stroke="black" points="244.33,-279.49 236.93,-271.9 237.98,-282.45 244.33,-279.49"/>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="../../da/da9/group__unbdb.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="480,-409.5 346.25,-409.5 346.25,-367.75 480,-367.75 480,-409.5"/>
<text text-anchor="start" x="354.25" y="-396" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb: &#160;&#160;&#160;&#160;bidiagonalize</text>
<text text-anchor="start" x="354.25" y="-384.75" font-family="Helvetica,sans-Serif" font-size="10.00"> partitioned unitary matrix,</text>
<text text-anchor="middle" x="413.12" y="-373.5" font-family="Helvetica,sans-Serif" font-size="10.00"> step in uncsd</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge5" class="edge">
<title>Node1&#45;&gt;Node6</title>
<path fill="none" stroke="black" d="M249.77,-278.7C271.21,-299.82 309.05,-334.88 346.25,-358.62 351.02,-361.67 356.14,-364.57 361.36,-367.28"/>
<polygon fill="black" stroke="black" points="252.25,-276.23 242.7,-271.65 247.31,-281.19 252.25,-276.23"/>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="../../df/da6/group__unbdb1.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.38,-349.88 363.88,-349.88 363.88,-319.38 462.38,-319.38 462.38,-349.88"/>
<text text-anchor="start" x="371.88" y="-336.38" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb1: &#160;&#160;&#160;step</text>
<text text-anchor="middle" x="413.12" y="-325.12" font-family="Helvetica,sans-Serif" font-size="10.00"> in uncsd2by1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node7 -->
<g id="edge6" class="edge">
<title>Node1&#45;&gt;Node7</title>
<path fill="none" stroke="black" d="M265.09,-275.26C287.82,-285.2 318.73,-298.51 346.25,-309.62 353.85,-312.69 361.98,-315.87 369.85,-318.89"/>
<polygon fill="black" stroke="black" points="266.59,-272.09 256.03,-271.28 263.78,-278.5 266.59,-272.09"/>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="../../dc/d06/group__unbdb2.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.38,-300.88 363.88,-300.88 363.88,-270.38 462.38,-270.38 462.38,-300.88"/>
<text text-anchor="start" x="371.88" y="-287.38" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb2: &#160;&#160;&#160;step</text>
<text text-anchor="middle" x="413.12" y="-276.12" font-family="Helvetica,sans-Serif" font-size="10.00"> in uncsd2by1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge7" class="edge">
<title>Node1&#45;&gt;Node8</title>
<path fill="none" stroke="black" d="M315.93,-272.27C332.2,-274.53 348.73,-276.83 363.39,-278.86"/>
<polygon fill="black" stroke="black" points="316.63,-268.84 306.24,-270.93 315.67,-275.77 316.63,-268.84"/>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="../../d0/d6f/group__unbdb3.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.38,-251.88 363.88,-251.88 363.88,-221.38 462.38,-221.38 462.38,-251.88"/>
<text text-anchor="start" x="371.88" y="-238.38" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb3: &#160;&#160;&#160;step</text>
<text text-anchor="middle" x="413.12" y="-227.12" font-family="Helvetica,sans-Serif" font-size="10.00"> in uncsd2by1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge8" class="edge">
<title>Node1&#45;&gt;Node9</title>
<path fill="none" stroke="black" d="M318.98,-249.04C334.31,-246.99 349.75,-244.94 363.54,-243.1"/>
<polygon fill="black" stroke="black" points="318.82,-245.53 309.37,-250.32 319.74,-252.47 318.82,-245.53"/>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="../../da/d07/group__unbdb4.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.38,-202.88 363.88,-202.88 363.88,-172.38 462.38,-172.38 462.38,-202.88"/>
<text text-anchor="start" x="371.88" y="-189.38" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb4: &#160;&#160;&#160;step</text>
<text text-anchor="middle" x="413.12" y="-178.12" font-family="Helvetica,sans-Serif" font-size="10.00"> in uncsd2by1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node10 -->
<g id="edge9" class="edge">
<title>Node1&#45;&gt;Node10</title>
<path fill="none" stroke="black" d="M265.55,-246.17C288.25,-236.47 318.95,-223.54 346.25,-212.62 353.97,-209.54 362.24,-206.33 370.22,-203.28"/>
<polygon fill="black" stroke="black" points="264.3,-242.89 256.49,-250.05 267.06,-249.33 264.3,-242.89"/>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="../../db/d1b/group__unbdb5.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.38,-153.88 363.88,-153.88 363.88,-123.38 462.38,-123.38 462.38,-153.88"/>
<text text-anchor="start" x="371.88" y="-140.38" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb5: &#160;&#160;&#160;step</text>
<text text-anchor="middle" x="413.12" y="-129.12" font-family="Helvetica,sans-Serif" font-size="10.00"> in uncsd2by1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node11 -->
<g id="edge10" class="edge">
<title>Node1&#45;&gt;Node11</title>
<path fill="none" stroke="black" d="M249.54,-242.33C270.78,-221.04 308.41,-185.96 346.25,-163.62 352.04,-160.2 358.39,-157.1 364.78,-154.33"/>
<polygon fill="black" stroke="black" points="247.06,-239.86 242.56,-249.45 252.06,-244.77 247.06,-239.86"/>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="../../da/de1/group__unbdb6.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.38,-104.88 363.88,-104.88 363.88,-74.38 462.38,-74.38 462.38,-104.88"/>
<text text-anchor="start" x="371.88" y="-91.38" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}bdb6: &#160;&#160;&#160;step</text>
<text text-anchor="middle" x="413.12" y="-80.12" font-family="Helvetica,sans-Serif" font-size="10.00"> in uncsd2by1</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node12 -->
<g id="edge11" class="edge">
<title>Node1&#45;&gt;Node12</title>
<path fill="none" stroke="black" d="M242.87,-240.54C260.63,-209.46 298.7,-149.64 346.25,-114.62 351.47,-110.78 357.35,-107.46 363.4,-104.6"/>
<polygon fill="black" stroke="black" points="239.81,-238.83 238,-249.27 245.93,-242.24 239.81,-238.83"/>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:href="../../d7/dc1/group__uncsd.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="457.12,-56.25 369.12,-56.25 369.12,-37 457.12,-37 457.12,-56.25"/>
<text text-anchor="middle" x="413.12" y="-42.75" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}csd: &#160;&#160;&#160;&#160;??</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3" class="edge">
<title>Node1&#45;&gt;Node4</title>
<path fill="none" stroke="black" d="M238.3,-240.03C251.55,-200.18 286.17,-112.33 346.25,-65.62 352.83,-60.51 360.73,-56.77 368.75,-54.04"/>
<polygon fill="black" stroke="black" points="235.04,-238.73 235.32,-249.32 241.71,-240.86 235.04,-238.73"/>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="../../dd/dce/group__uncsd2by1.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="461.62,-19.25 364.62,-19.25 364.62,0 461.62,0 461.62,-19.25"/>
<text text-anchor="middle" x="413.12" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">{un,or}csd2by1: ??</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4" class="edge">
<title>Node1&#45;&gt;Node5</title>
<path fill="none" stroke="black" d="M236.15,-239.79C246.36,-194.15 277.06,-84.83 346.25,-27.62 351.55,-23.24 357.83,-19.92 364.37,-17.41"/>
<polygon fill="black" stroke="black" points="232.76,-238.9 234.11,-249.4 239.61,-240.35 232.76,-238.9"/>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="../../d7/d69/group__unitary__top.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="115.75,-275.88 0,-275.88 0,-245.38 115.75,-245.38 115.75,-275.88"/>
<text text-anchor="start" x="8" y="-262.38" font-family="Helvetica,sans-Serif" font-size="10.00">Orthogonal/unitary</text>
<text text-anchor="middle" x="57.88" y="-251.12" font-family="Helvetica,sans-Serif" font-size="10.00"> factors (QR, CS, etc.)</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1" class="edge">
<title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="black" d="M127.27,-260.62C135.18,-260.62 143.29,-260.62 151.33,-260.62"/>
<polygon fill="black" stroke="black" points="127.37,-257.13 117.37,-260.63 127.37,-264.13 127.37,-257.13"/>
</g>
</g>
</svg>

<g id="navigator" transform="translate(0 0)" fill="#404254">
  <rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
  <use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
  <use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
  <use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
   <use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
  <use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
  <use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
  <use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
 <g id="arrow_out" transform="scale(0.3 0.3)">
  <a xlink:href="group__gecs__comp__grp_org.svg" target="_base">
   <rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
        fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
   <path id="arrow"
     d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
     style="fill:#404040;"/>
  </a>
 </g>
</svg>

<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true']  { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
  highlightEdges();
  highlightAdjacentNodes();
});
]]></script>
</svg>

.
