Skip to content

Commit

Permalink
deploy: a63109d
Browse files Browse the repository at this point in the history
  • Loading branch information
bobbinth committed Jun 7, 2024
1 parent c25db5d commit f335d9b
Show file tree
Hide file tree
Showing 7 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ <h1 class="menu-title">Polygon Miden VM</h1>
<h1 id="introduction"><a class="header" href="#introduction">Introduction</a></h1>
<p>Miden VM is a zero-knowledge virtual machine written in Rust. For any program executed on Miden VM, a STARK-based proof of execution is automatically generated. This proof can then be used by anyone to verify that the program was executed correctly without the need for re-executing the program or even knowing the contents of the program.</p>
<h2 id="status-and-features"><a class="header" href="#status-and-features">Status and features</a></h2>
<p>Miden VM is currently on release v0.8. In this release, most of the core features of the VM have been stabilized, and most of the STARK proof generation has been implemented. While we expect to keep making changes to the VM internals, the external interfaces should remain relatively stable, and we will do our best to minimize the amount of breaking changes going forward.</p>
<p>Miden VM is currently on release v0.9. In this release, most of the core features of the VM have been stabilized, and most of the STARK proof generation has been implemented. While we expect to keep making changes to the VM internals, the external interfaces should remain relatively stable, and we will do our best to minimize the amount of breaking changes going forward.</p>
<p>At this point, Miden VM is good enough for experimentation, and even for real-world applications, but it is not yet ready for production use. The codebase has not been audited and contains known and unknown bugs and security flaws.</p>
<h3 id="feature-highlights"><a class="header" href="#feature-highlights">Feature highlights</a></h3>
<p>Miden VM is a fully-featured virtual machine. Despite being optimized for zero-knowledge proof generation, it provides all the features one would expect from a regular VM. To highlight a few:</p>
Expand Down
2 changes: 1 addition & 1 deletion intro/main.html
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ <h1 class="menu-title">Polygon Miden VM</h1>
<h1 id="introduction"><a class="header" href="#introduction">Introduction</a></h1>
<p>Miden VM is a zero-knowledge virtual machine written in Rust. For any program executed on Miden VM, a STARK-based proof of execution is automatically generated. This proof can then be used by anyone to verify that the program was executed correctly without the need for re-executing the program or even knowing the contents of the program.</p>
<h2 id="status-and-features"><a class="header" href="#status-and-features">Status and features</a></h2>
<p>Miden VM is currently on release v0.8. In this release, most of the core features of the VM have been stabilized, and most of the STARK proof generation has been implemented. While we expect to keep making changes to the VM internals, the external interfaces should remain relatively stable, and we will do our best to minimize the amount of breaking changes going forward.</p>
<p>Miden VM is currently on release v0.9. In this release, most of the core features of the VM have been stabilized, and most of the STARK proof generation has been implemented. While we expect to keep making changes to the VM internals, the external interfaces should remain relatively stable, and we will do our best to minimize the amount of breaking changes going forward.</p>
<p>At this point, Miden VM is good enough for experimentation, and even for real-world applications, but it is not yet ready for production use. The codebase has not been audited and contains known and unknown bugs and security flaws.</p>
<h3 id="feature-highlights"><a class="header" href="#feature-highlights">Feature highlights</a></h3>
<p>Miden VM is a fully-featured virtual machine. Despite being optimized for zero-knowledge proof generation, it provides all the features one would expect from a regular VM. To highlight a few:</p>
Expand Down
2 changes: 1 addition & 1 deletion intro/usage.html
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ <h1 class="menu-title">Polygon Miden VM</h1>
<main>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css">
<h1 id="usage"><a class="header" href="#usage">Usage</a></h1>
<p>Before you can use Miden VM, you'll need to make sure you have Rust <a href="https://www.rust-lang.org/tools/install">installed</a>. Miden VM v0.8 requires Rust version <strong>1.75</strong> or later.</p>
<p>Before you can use Miden VM, you'll need to make sure you have Rust <a href="https://www.rust-lang.org/tools/install">installed</a>. Miden VM v0.9 requires Rust version <strong>1.75</strong> or later.</p>
<p>Miden VM consists of several crates, each of which exposes a small set of functionality. The most notable of these crates are:</p>
<ul>
<li><a href="https://crates.io/crates/miden-processor">miden-processor</a>, which can be used to execute Miden VM programs.</li>
Expand Down
6 changes: 3 additions & 3 deletions print.html
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ <h1 class="menu-title">Polygon Miden VM</h1>
<h1 id="introduction"><a class="header" href="#introduction">Introduction</a></h1>
<p>Miden VM is a zero-knowledge virtual machine written in Rust. For any program executed on Miden VM, a STARK-based proof of execution is automatically generated. This proof can then be used by anyone to verify that the program was executed correctly without the need for re-executing the program or even knowing the contents of the program.</p>
<h2 id="status-and-features"><a class="header" href="#status-and-features">Status and features</a></h2>
<p>Miden VM is currently on release v0.8. In this release, most of the core features of the VM have been stabilized, and most of the STARK proof generation has been implemented. While we expect to keep making changes to the VM internals, the external interfaces should remain relatively stable, and we will do our best to minimize the amount of breaking changes going forward.</p>
<p>Miden VM is currently on release v0.9. In this release, most of the core features of the VM have been stabilized, and most of the STARK proof generation has been implemented. While we expect to keep making changes to the VM internals, the external interfaces should remain relatively stable, and we will do our best to minimize the amount of breaking changes going forward.</p>
<p>At this point, Miden VM is good enough for experimentation, and even for real-world applications, but it is not yet ready for production use. The codebase has not been audited and contains known and unknown bugs and security flaws.</p>
<h3 id="feature-highlights"><a class="header" href="#feature-highlights">Feature highlights</a></h3>
<p>Miden VM is a fully-featured virtual machine. Despite being optimized for zero-knowledge proof generation, it provides all the features one would expect from a regular VM. To highlight a few:</p>
Expand Down Expand Up @@ -255,7 +255,7 @@ <h3 id="nondeterministic-inputs"><a class="header" href="#nondeterministic-input
<p>The prover initializes the advice provider prior to executing a program, and from that point on the advice provider is manipulated solely by executing operations on the VM.</p>
<div style="break-before: page; page-break-before: always;"></div><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css">
<h1 id="usage"><a class="header" href="#usage">Usage</a></h1>
<p>Before you can use Miden VM, you'll need to make sure you have Rust <a href="https://www.rust-lang.org/tools/install">installed</a>. Miden VM v0.8 requires Rust version <strong>1.75</strong> or later.</p>
<p>Before you can use Miden VM, you'll need to make sure you have Rust <a href="https://www.rust-lang.org/tools/install">installed</a>. Miden VM v0.9 requires Rust version <strong>1.75</strong> or later.</p>
<p>Miden VM consists of several crates, each of which exposes a small set of functionality. The most notable of these crates are:</p>
<ul>
<li><a href="https://crates.io/crates/miden-processor">miden-processor</a>, which can be used to execute Miden VM programs.</li>
Expand Down Expand Up @@ -964,7 +964,7 @@ <h3 id="assertions-and-tests"><a class="header" href="#assertions-and-tests">Ass
</code></pre>
<p>If the error code is omitted, the default value of <span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.6444em;"></span><span class="mord">0</span></span></span></span> is assumed.</p>
<h3 id="arithmetic-and-boolean-operations"><a class="header" href="#arithmetic-and-boolean-operations">Arithmetic and Boolean operations</a></h3>
<p>The arithmetic operations below are performed in a 64-bit <a href="https://en.wikipedia.org/wiki/Finite_field">prime filed</a> defined by modulus <span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">p</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:0.8974em;vertical-align:-0.0833em;"></span><span class="mord"><span class="mord">2</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">64</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:0.8974em;vertical-align:-0.0833em;"></span><span class="mord"><span class="mord">2</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">32</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:0.6444em;"></span><span class="mord">1</span></span></span></span>. This means that overflow happens after a value exceeds <span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">p</span></span></span></span>. Also, the result of divisions may appear counter-intuitive because divisions are defined via inversions.</p>
<p>The arithmetic operations below are performed in a 64-bit <a href="https://en.wikipedia.org/wiki/Finite_field">prime field</a> defined by modulus <span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">p</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:0.8974em;vertical-align:-0.0833em;"></span><span class="mord"><span class="mord">2</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">64</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:0.8974em;vertical-align:-0.0833em;"></span><span class="mord"><span class="mord">2</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">32</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:0.6444em;"></span><span class="mord">1</span></span></span></span>. This means that overflow happens after a value exceeds <span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">p</span></span></span></span>. Also, the result of divisions may appear counter-intuitive because divisions are defined via inversions.</p>
<div class="table-wrapper"><table><thead><tr><th>Instruction</th><th>Stack_input</th><th>Stack_output</th><th>Notes</th></tr></thead><tbody>
<tr><td>add <br> - <em>(1 cycle)</em> <br> add.<em>b</em> <br> - <em>(1-2 cycle)</em></td><td>[b, a, ...]</td><td>[c, ...]</td><td><span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.4306em;"></span><span class="mord mathnormal">c</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">←</span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">a</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">b</span><span class="mclose">)</span><span class="mspace allowbreak"></span><span class="mspace" style="margin-right:0.6667em;"></span></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"></span><span class="mord"><span class="mord"><span class="mord mathrm">mod</span></span></span><span class="mspace" style="margin-right:0.1667em;"></span><span class="mspace" style="margin-right:0.1667em;"></span><span class="mord mathnormal">p</span></span></span></span></td></tr>
<tr><td>sub <br> - <em>(2 cycles)</em> <br> sub.<em>b</em> <br> - <em>(2 cycles)</em></td><td>[b, a, ...]</td><td>[c, ...]</td><td><span class="katex"><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.4306em;"></span><span class="mord mathnormal">c</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">←</span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">a</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">b</span><span class="mclose">)</span><span class="mspace allowbreak"></span><span class="mspace" style="margin-right:0.6667em;"></span></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"></span><span class="mord"><span class="mord"><span class="mord mathrm">mod</span></span></span><span class="mspace" style="margin-right:0.1667em;"></span><span class="mspace" style="margin-right:0.1667em;"></span><span class="mord mathnormal">p</span></span></span></span></td></tr>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion searchindex.json

Large diffs are not rendered by default.

Loading

0 comments on commit f335d9b

Please sign in to comment.