One Hat Cyber Team
Your IP :
216.73.216.14
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
doc
/
Macaulay2
/
Posets
/
html
/
View File Name :
___Precompute.html
<!DOCTYPE html> <html lang="en"> <head> <title>Precompute -- a package-wide configuration that toggles precomputation</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <link type="text/css" rel="stylesheet" href="../../../../Macaulay2/Style/doc.css"> <link rel="stylesheet" href="../../../../Macaulay2/Style/katex/katex.min.css"> <script defer="defer" src="../../../../Macaulay2/Style/katex/katex.min.js"></script> <script defer="defer" src="../../../../Macaulay2/Style/katex/contrib/auto-render.min.js"></script> <script> var macros = { "\\break": "\\\\", "\\ZZ": "\\mathbb{Z}", "\\NN": "\\mathbb{N}", "\\QQ": "\\mathbb{Q}", "\\RR": "\\mathbb{R}", "\\CC": "\\mathbb{C}", "\\PP": "\\mathbb{P}" }, delimiters = [ { left: "$$", right: "$$", display: true}, { left: "\\[", right: "\\]", display: true}, { left: "$", right: "$", display: false}, { left: "\\(", right: "\\)", display: false} ], ignoredTags = [ "kbd", "var", "samp", "script", "noscript", "style", "textarea", "pre", "code", "option" ]; document.addEventListener("DOMContentLoaded", function() { renderMathInElement(document.body, { delimiters: delimiters, macros: macros, ignoredTags: ignoredTags, trust: true }); }); </script> <style>.katex { font-size: 1em; }</style> <script defer="defer" src="../../../../Macaulay2/Style/katex/contrib/copy-tex.min.js"></script> <script defer="defer" src="../../../../Macaulay2/Style/katex/contrib/render-a11y-string.min.js"></script> <script src="../../../../Macaulay2/Style/prism.js"></script> <script>var current_version = '1.25.06';</script> <script src="../../../../Macaulay2/Style/version-select.js"></script> <link type="image/x-icon" rel="icon" href="../../../../Macaulay2/Style/icon.gif"> </head> <body> <div id="buttons"> <div> <a href="https://macaulay2.com/">Macaulay2</a> <span id="version-select-container"></span> » <a title="Macaulay2 documentation" href="../../Macaulay2Doc/html/index.html">Documentation </a> <br><a href="../../Macaulay2Doc/html/_packages_spprovided_spwith_sp__Macaulay2.html">Packages</a> » <span><a title="a package for working with partially ordered sets" href="index.html">Posets</a> :: <a title="a package-wide configuration that toggles precomputation" href="___Precompute.html">Precompute</a></span> </div> <div class="right"> <form method="get" action="https://www.google.com/search"> <input placeholder="Search" type="text" name="q" value=""> <input type="hidden" name="q" value="site:macaulay2.com/doc"> </form> <a href="_principal__Filter.html">next</a> | <a href="_p__Partition__Ring.html">previous</a> | <a href="_principal__Filter.html">forward</a> | <a href="_p__Partition__Ring.html">backward</a> | up | <a href="master.html">index</a> | <a href="toc.html">toc</a> </div> </div> <hr> <div> <h1>Precompute -- a package-wide configuration that toggles precomputation</h1> <div> <h2>Description</h2> <div> <p>Many routines in this package are written to take advantage of known structure on some posets to quickly precompute some of the cached data. However, this may not always be desirable, and so this flag toggles whether precomputation occurs. It can be set with the <a title="sets the Precompute configuration" href="_set__Precompute.html">setPrecompute</a> method.</p> <p>As an example, <a title="generates the chain poset on $n$ elements" href="_chain.html">chain</a> posets are known to be distributive lattices. If the precomputation flag is set, then the method fills this in automatically.</p> </div> <table class="examples"> <tr> <td> <pre><code class="language-macaulay2">i1 : setPrecompute true;</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i2 : C = chain 10;</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i3 : peek C.cache o3 = CacheTable{connectedComponents => {{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}} } coveringRelations => {{0, 1}, {1, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}, {6, 7}, {7, 8}, {8, 9}} filtration => {{0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}} greeneKleitmanPartition => Partition{10} isAtomic => false isDistributive => true isEulerian => false isLowerSemilattice => true isLowerSemimodular => true isUpperSemilattice => true isUpperSemimodular => true maximalAntichains => {{0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}} maximalChains => {{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}} maximalElements => {9} minimalElements => {0} name => C rankFunction => {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i4 : P = poset apply(9, i -> {i+1, i+2});</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i5 : peek P.cache o5 = CacheTable{name => P}</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i6 : C == P o6 = true</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i7 : time isDistributive C -- used 0.000121206s (cpu); 9.248e-06s (thread); 0s (gc) o7 = true</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i8 : time isDistributive P -- used 5.72535s (cpu); 4.66931s (thread); 0s (gc) o8 = true</code></pre> </td> </tr> </table> <div> <p>We also know that the dual of a distributive lattice is again a distributive lattice. Other information is copied when possible.</p> </div> <table class="examples"> <tr> <td> <pre><code class="language-macaulay2">i9 : C' = dual C;</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i10 : time isDistributive C' -- used 0.000260577s (cpu); 5.771e-06s (thread); 0s (gc) o10 = true</code></pre> </td> </tr> <tr> <td> <pre><code class="language-macaulay2">i11 : peek C'.cache o11 = CacheTable{connectedComponents => {{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}} } coveringRelations => {{1, 0}, {2, 1}, {3, 2}, {4, 3}, {5, 4}, {6, 5}, {7, 6}, {8, 7}, {9, 8}} filtration => {{9}, {8}, {7}, {6}, {5}, {4}, {3}, {2}, {1}, {0}} greeneKleitmanPartition => Partition{10} isDistributive => true isEulerian => false isLowerSemilattice => true isLowerSemimodular => true isUpperSemilattice => true isUpperSemimodular => true maximalAntichains => {{0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}} maximalChains => {{9, 8, 7, 6, 5, 4, 3, 2, 1, 0}} maximalElements => {0} minimalElements => {9} name => C' rankFunction => {9, 8, 7, 6, 5, 4, 3, 2, 1, 0}</code></pre> </td> </tr> </table> </div> <div> <h2>See also</h2> <ul> <li><span><a title="sets the Precompute configuration" href="_set__Precompute.html">setPrecompute</a> -- sets the Precompute configuration</span></li> </ul> </div> <div> <div class="waystouse"> <h2>For the programmer</h2> <p>The object <a title="a package-wide configuration that toggles precomputation" href="___Precompute.html">Precompute</a> is <span>a <a title="the class of all symbols" href="../../Macaulay2Doc/html/___Symbol.html">symbol</a></span>.</p> </div> <hr> <div class="waystouse"> <p>The source of this document is in <span class="tt">Posets.m2:2217:0</span>.</p> </div> </div> </div> </body> </html>