Skip to content

Commit

Permalink
Docs preview for PR #2466.
Browse files Browse the repository at this point in the history
  • Loading branch information
cuda-quantum-bot committed Jan 13, 2025
1 parent 0caf432 commit 7c483d3
Show file tree
Hide file tree
Showing 52 changed files with 487 additions and 487 deletions.
72 changes: 36 additions & 36 deletions pr-2466/_static/pygments.css
Original file line number Diff line number Diff line change
Expand Up @@ -4,34 +4,34 @@ span.linenos { color: #3c4354; background-color: transparent; padding-left: 5px;
td.linenos .special { color: #3c4354; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #3c4354; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: #6e7681 }
.highlight { background: #1d2331; color: #d4d2c8 }
.highlight .c { color: #7e8aa1 } /* Comment */
.highlight .err { color: #f88f7f } /* Error */
.highlight .esc { color: #d4d2c8 } /* Escape */
.highlight .g { color: #d4d2c8 } /* Generic */
.highlight { background: #1d2331; color: #D4D2C8 }
.highlight .c { color: #7E8AA1 } /* Comment */
.highlight .err { color: #F88F7F } /* Error */
.highlight .esc { color: #D4D2C8 } /* Escape */
.highlight .g { color: #D4D2C8 } /* Generic */
.highlight .k { color: #FFAD66 } /* Keyword */
.highlight .l { color: #D5FF80 } /* Literal */
.highlight .n { color: #d4d2c8 } /* Name */
.highlight .n { color: #D4D2C8 } /* Name */
.highlight .o { color: #FFAD66 } /* Operator */
.highlight .x { color: #d4d2c8 } /* Other */
.highlight .p { color: #d4d2c8 } /* Punctuation */
.highlight .ch { color: #f88f7f; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #7e8aa1 } /* Comment.Multiline */
.highlight .x { color: #D4D2C8 } /* Other */
.highlight .p { color: #D4D2C8 } /* Punctuation */
.highlight .ch { color: #F88F7F; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #7E8AA1 } /* Comment.Multiline */
.highlight .cp { color: #FFAD66; font-weight: bold } /* Comment.Preproc */
.highlight .cpf { color: #7e8aa1 } /* Comment.PreprocFile */
.highlight .c1 { color: #7e8aa1 } /* Comment.Single */
.highlight .cs { color: #7e8aa1; font-style: italic } /* Comment.Special */
.highlight .gd { color: #f88f7f; background-color: #3d1e20 } /* Generic.Deleted */
.highlight .ge { color: #d4d2c8; font-style: italic } /* Generic.Emph */
.highlight .ges { color: #d4d2c8 } /* Generic.EmphStrong */
.highlight .gr { color: #f88f7f } /* Generic.Error */
.highlight .gh { color: #d4d2c8 } /* Generic.Heading */
.highlight .gi { color: #6ad4af; background-color: #19362c } /* Generic.Inserted */
.highlight .go { color: #7e8aa1 } /* Generic.Output */
.highlight .gp { color: #d4d2c8 } /* Generic.Prompt */
.highlight .gs { color: #d4d2c8; font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #d4d2c8 } /* Generic.Subheading */
.highlight .gt { color: #f88f7f } /* Generic.Traceback */
.highlight .cpf { color: #7E8AA1 } /* Comment.PreprocFile */
.highlight .c1 { color: #7E8AA1 } /* Comment.Single */
.highlight .cs { color: #7E8AA1; font-style: italic } /* Comment.Special */
.highlight .gd { color: #F88F7F; background-color: #3D1E20 } /* Generic.Deleted */
.highlight .ge { color: #D4D2C8; font-style: italic } /* Generic.Emph */
.highlight .ges { color: #D4D2C8 } /* Generic.EmphStrong */
.highlight .gr { color: #F88F7F } /* Generic.Error */
.highlight .gh { color: #D4D2C8 } /* Generic.Heading */
.highlight .gi { color: #6AD4AF; background-color: #19362C } /* Generic.Inserted */
.highlight .go { color: #7E8AA1 } /* Generic.Output */
.highlight .gp { color: #D4D2C8 } /* Generic.Prompt */
.highlight .gs { color: #D4D2C8; font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #D4D2C8 } /* Generic.Subheading */
.highlight .gt { color: #F88F7F } /* Generic.Traceback */
.highlight .kc { color: #FFAD66 } /* Keyword.Constant */
.highlight .kd { color: #FFAD66 } /* Keyword.Declaration */
.highlight .kn { color: #FFAD66 } /* Keyword.Namespace */
Expand All @@ -45,19 +45,19 @@ span.linenos.special { color: #3c4354; background-color: #ffffc0; padding-left:
.highlight .nb { color: #FFD173 } /* Name.Builtin */
.highlight .nc { color: #73D0FF } /* Name.Class */
.highlight .no { color: #FFD173 } /* Name.Constant */
.highlight .nd { color: #7e8aa1; font-weight: bold; font-style: italic } /* Name.Decorator */
.highlight .nd { color: #7E8AA1; font-weight: bold; font-style: italic } /* Name.Decorator */
.highlight .ni { color: #95E6CB } /* Name.Entity */
.highlight .ne { color: #73D0FF } /* Name.Exception */
.highlight .nf { color: #FFD173 } /* Name.Function */
.highlight .nl { color: #d4d2c8 } /* Name.Label */
.highlight .nn { color: #d4d2c8 } /* Name.Namespace */
.highlight .nx { color: #d4d2c8 } /* Name.Other */
.highlight .nl { color: #D4D2C8 } /* Name.Label */
.highlight .nn { color: #D4D2C8 } /* Name.Namespace */
.highlight .nx { color: #D4D2C8 } /* Name.Other */
.highlight .py { color: #FFD173 } /* Name.Property */
.highlight .nt { color: #5CCFE6 } /* Name.Tag */
.highlight .nv { color: #d4d2c8 } /* Name.Variable */
.highlight .nv { color: #D4D2C8 } /* Name.Variable */
.highlight .ow { color: #FFAD66 } /* Operator.Word */
.highlight .pm { color: #d4d2c8 } /* Punctuation.Marker */
.highlight .w { color: #d4d2c8 } /* Text.Whitespace */
.highlight .pm { color: #D4D2C8 } /* Punctuation.Marker */
.highlight .w { color: #D4D2C8 } /* Text.Whitespace */
.highlight .mb { color: #DFBFFF } /* Literal.Number.Bin */
.highlight .mf { color: #DFBFFF } /* Literal.Number.Float */
.highlight .mh { color: #DFBFFF } /* Literal.Number.Hex */
Expand All @@ -67,7 +67,7 @@ span.linenos.special { color: #3c4354; background-color: #ffffc0; padding-left:
.highlight .sb { color: #D5FF80 } /* Literal.String.Backtick */
.highlight .sc { color: #D5FF80 } /* Literal.String.Char */
.highlight .dl { color: #D5FF80 } /* Literal.String.Delimiter */
.highlight .sd { color: #7e8aa1 } /* Literal.String.Doc */
.highlight .sd { color: #7E8AA1 } /* Literal.String.Doc */
.highlight .s2 { color: #D5FF80 } /* Literal.String.Double */
.highlight .se { color: #95E6CB } /* Literal.String.Escape */
.highlight .sh { color: #D5FF80 } /* Literal.String.Heredoc */
Expand All @@ -78,8 +78,8 @@ span.linenos.special { color: #3c4354; background-color: #ffffc0; padding-left:
.highlight .ss { color: #DFBFFF } /* Literal.String.Symbol */
.highlight .bp { color: #5CCFE6 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #FFD173 } /* Name.Function.Magic */
.highlight .vc { color: #d4d2c8 } /* Name.Variable.Class */
.highlight .vg { color: #d4d2c8 } /* Name.Variable.Global */
.highlight .vi { color: #d4d2c8 } /* Name.Variable.Instance */
.highlight .vm { color: #d4d2c8 } /* Name.Variable.Magic */
.highlight .vc { color: #D4D2C8 } /* Name.Variable.Class */
.highlight .vg { color: #D4D2C8 } /* Name.Variable.Global */
.highlight .vi { color: #D4D2C8 } /* Name.Variable.Instance */
.highlight .vm { color: #D4D2C8 } /* Name.Variable.Magic */
.highlight .il { color: #DFBFFF } /* Literal.Number.Integer.Long */
14 changes: 7 additions & 7 deletions pr-2466/api/default_ops.html
Original file line number Diff line number Diff line change
Expand Up @@ -1252,15 +1252,15 @@ <h2>User-Defined Custom Operations<a class="headerlink" href="#user-defined-cust
<p>The <code class="code docutils literal notranslate"><span class="pre">cudaq.register_operation</span></code> API accepts an identifier string for
the custom operation and its unitary matrix. The matrix can be a <code class="code docutils literal notranslate"><span class="pre">list</span></code> or
<code class="code docutils literal notranslate"><span class="pre">numpy</span></code> array of complex numbers. A 1D matrix is interpreted as row-major.</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">cudaq</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">cudaq</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>

<span class="n">cudaq</span><span class="o">.</span><span class="n">register_operation</span><span class="p">(</span><span class="s2">&quot;custom_h&quot;</span><span class="p">,</span> <span class="mf">1.</span> <span class="o">/</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="mf">2.</span><span class="p">)</span> <span class="o">*</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">]))</span>

<span class="n">cudaq</span><span class="o">.</span><span class="n">register_operation</span><span class="p">(</span><span class="s2">&quot;custom_x&quot;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">]))</span>

<span class="nd">@cudaq</span><span class="o">.</span><span class="n">kernel</span>
<span class="k">def</span> <span class="nf">bell</span><span class="p">():</span>
<span class="k">def</span><span class="w"> </span><span class="nf">bell</span><span class="p">():</span>
<span class="n">qubits</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">qvector</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="n">custom_h</span><span class="p">(</span><span class="n">qubits</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
<span class="n">custom_x</span><span class="o">.</span><span class="n">ctrl</span><span class="p">(</span><span class="n">qubits</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">qubits</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
Expand Down Expand Up @@ -1302,8 +1302,8 @@ <h2>User-Defined Custom Operations<a class="headerlink" href="#user-defined-cust
operations, each operating on 2 qubits.</p>
<div class="tab-set docutils">
<input checked="True" class="tab-input" id="tab-set--18-input--1" name="tab-set--18" type="radio"><label class="tab-label" for="tab-set--18-input--1">Python</label><div class="tab-content docutils">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">cudaq</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">cudaq</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>

<span class="c1"># Create and test a custom CNOT operation.</span>
<span class="n">cudaq</span><span class="o">.</span><span class="n">register_operation</span><span class="p">(</span><span class="s2">&quot;my_cnot&quot;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
Expand All @@ -1312,7 +1312,7 @@ <h2>User-Defined Custom Operations<a class="headerlink" href="#user-defined-cust
<span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">]))</span>

<span class="nd">@cudaq</span><span class="o">.</span><span class="n">kernel</span>
<span class="k">def</span> <span class="nf">bell_pair</span><span class="p">():</span>
<span class="k">def</span><span class="w"> </span><span class="nf">bell_pair</span><span class="p">():</span>
<span class="n">qubits</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">qvector</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="n">h</span><span class="p">(</span><span class="n">qubits</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
<span class="n">my_cnot</span><span class="p">(</span><span class="n">qubits</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">qubits</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="c1"># `my_cnot(control, target)`</span>
Expand All @@ -1331,7 +1331,7 @@ <h2>User-Defined Custom Operations<a class="headerlink" href="#user-defined-cust
<span class="n">cudaq</span><span class="o">.</span><span class="n">register_operation</span><span class="p">(</span><span class="s2">&quot;my_XY&quot;</span><span class="p">,</span> <span class="n">XY</span><span class="p">)</span>

<span class="nd">@cudaq</span><span class="o">.</span><span class="n">kernel</span>
<span class="k">def</span> <span class="nf">custom_xy_test</span><span class="p">():</span>
<span class="k">def</span><span class="w"> </span><span class="nf">custom_xy_test</span><span class="p">():</span>
<span class="n">qubits</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">qvector</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="n">my_XY</span><span class="p">(</span><span class="n">qubits</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">qubits</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
<span class="n">y</span><span class="p">(</span><span class="n">qubits</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="c1"># undo the prior Y gate on qubit 1</span>
Expand Down
14 changes: 7 additions & 7 deletions pr-2466/api/languages/python_api.html
Original file line number Diff line number Diff line change
Expand Up @@ -1059,7 +1059,7 @@ <h2>Kernel Execution<a class="headerlink" href="#kernel-execution" title="Permal
</dd>
</dl>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Example:</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>

<span class="c1"># Define a kernel that will produced the all |11...1&gt; state.</span>
<span class="n">kernel</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">make_kernel</span><span class="p">()</span>
Expand Down Expand Up @@ -1188,9 +1188,9 @@ <h2>Kernel Execution<a class="headerlink" href="#kernel-execution" title="Permal
</dd>
</dl>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Example</span>
<span class="kn">import</span> <span class="nn">cudaq</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">cudaq</span>
<span class="nd">@cudaq</span><span class="o">.</span><span class="n">kernel</span>
<span class="k">def</span> <span class="nf">bell_pair</span><span class="p">():</span>
<span class="k">def</span><span class="w"> </span><span class="nf">bell_pair</span><span class="p">():</span>
<span class="n">q</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">qvector</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="n">h</span><span class="p">(</span><span class="n">q</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
<span class="n">cx</span><span class="p">(</span><span class="n">q</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">q</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
Expand All @@ -1204,9 +1204,9 @@ <h2>Kernel Execution<a class="headerlink" href="#kernel-execution" title="Permal
<span class="c1"># ╰───╯</span>

<span class="c1"># Example with arguments</span>
<span class="kn">import</span> <span class="nn">cudaq</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">cudaq</span>
<span class="nd">@cudaq</span><span class="o">.</span><span class="n">kernel</span>
<span class="k">def</span> <span class="nf">kernel</span><span class="p">(</span><span class="n">angle</span><span class="p">:</span><span class="nb">float</span><span class="p">):</span>
<span class="k">def</span><span class="w"> </span><span class="nf">kernel</span><span class="p">(</span><span class="n">angle</span><span class="p">:</span><span class="nb">float</span><span class="p">):</span>
<span class="n">q</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">qubit</span><span class="p">()</span>
<span class="n">h</span><span class="p">(</span><span class="n">q</span><span class="p">)</span>
<span class="n">ry</span><span class="p">(</span><span class="n">angle</span><span class="p">,</span> <span class="n">q</span><span class="p">)</span>
Expand Down Expand Up @@ -1245,9 +1245,9 @@ <h2>Kernel Execution<a class="headerlink" href="#kernel-execution" title="Permal
</dd>
</dl>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Example</span>
<span class="kn">import</span> <span class="nn">cudaq</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">cudaq</span>
<span class="nd">@cudaq</span><span class="o">.</span><span class="n">kernel</span>
<span class="k">def</span> <span class="nf">bell_pair</span><span class="p">():</span>
<span class="k">def</span><span class="w"> </span><span class="nf">bell_pair</span><span class="p">():</span>
<span class="n">q</span> <span class="o">=</span> <span class="n">cudaq</span><span class="o">.</span><span class="n">qvector</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="n">h</span><span class="p">(</span><span class="n">q</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
<span class="n">cx</span><span class="p">(</span><span class="n">q</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">q</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
Expand Down
Loading

0 comments on commit 7c483d3

Please sign in to comment.