<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Issue 791: piecewise_constant_distribution::densities has wrong name</title>
<meta property="og:title" content="Issue 791: piecewise_constant_distribution::densities has wrong name">
<meta property="og:description" content="C++ library issue. Status: NAD">
<meta property="og:url" content="https://cplusplus.github.io/LWG/issue791.html">
<meta property="og:type" content="website">
<meta property="og:image" content="http://cplusplus.github.io/LWG/images/cpp_logo.png">
<meta property="og:image:alt" content="C++ logo">
<style>
  p {text-align:justify}
  li {text-align:justify}
  pre code.backtick::before { content: "`" }
  pre code.backtick::after { content: "`" }
  blockquote.note
  {
    background-color:#E0E0E0;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 1px;
    padding-bottom: 1px;
  }
  ins {background-color:#A0FFA0}
  del {background-color:#FFA0A0}
  table.issues-index { border: 1px solid; border-collapse: collapse; }
  table.issues-index th { text-align: center; padding: 4px; border: 1px solid; }
  table.issues-index td { padding: 4px; border: 1px solid; }
  table.issues-index td:nth-child(1) { text-align: right; }
  table.issues-index td:nth-child(2) { text-align: left; }
  table.issues-index td:nth-child(3) { text-align: left; }
  table.issues-index td:nth-child(4) { text-align: left; }
  table.issues-index td:nth-child(5) { text-align: center; }
  table.issues-index td:nth-child(6) { text-align: center; }
  table.issues-index td:nth-child(7) { text-align: left; }
  table.issues-index td:nth-child(5) span.no-pr { color: red; }
  @media (prefers-color-scheme: dark) {
     html {
        color: #ddd;
        background-color: black;
     }
     ins {
        background-color: #225522
     }
     del {
        background-color: #662222
     }
     a {
        color: #6af
     }
     a:visited {
        color: #6af
     }
     blockquote.note
     {
        background-color: rgba(255, 255, 255, .10)
     }
  }
</style>
</head>
<body>
<hr>
<p><em>This page is a snapshot from the LWG issues list, see the <a href="lwg-active.html">Library Active Issues List</a> for more information and the meaning of <a href="lwg-active.html#NAD">NAD</a> status.</em></p>
<h3 id="791"><a href="lwg-closed.html#791">791</a>. <code>piecewise_constant_distribution::densities</code> has wrong name</h3>
<p><b>Section:</b> 29.5.9.6.2 <a href="https://wg21.link/rand.dist.samp.pconst">[rand.dist.samp.pconst]</a> <b>Status:</b> <a href="lwg-active.html#NAD">NAD</a>
 <b>Submitter:</b> P.J. Plauger <b>Opened:</b> 2008-02-09 <b>Last modified:</b> 2016-01-28</p>
<p><b>Priority: </b>Not Prioritized
</p>
<p><b>View all other</b> <a href="lwg-index.html#rand.dist.samp.pconst">issues</a> in [rand.dist.samp.pconst].</p>
<p><b>View all issues with</b> <a href="lwg-status.html#NAD">NAD</a> status.</p>
<p><b>Discussion:</b></p>
<p>
<code>piecewise_constant_distribution::densities()</code> should be <code>probabilities()</code>,
just like <code>discrete_distribution</code>. (There's no real use for weights divided
by areas.)
</p>

<p><i>[
Bellevue:
]</i></p>


<blockquote>
<p>
Fermilab does not agree with this summary. As defined in the equation in
26.4.8.5.2/4, the quantities are indeed probability densities not
probabilities. Because we view this distribution as a parameterization
of a *probability density function*, we prefer to work in terms of
probability densities.
</p>

<p>
We don't think this should be changed.
</p>

<p>
If there is a technical argument about why the implementation dealing
with these values can't be as efficient as one dealing with
probabilities, we might reconsider. We don't care about this one member
function being somewhat more or less efficient; we care about the size
of the distribution object and the speed of the calls to generate
variates.
</p>
</blockquote>



<p id="res-791"><b>Proposed resolution:</b></p>

<p>
Change synopsis in 29.5.9.6.2 <a href="https://wg21.link/rand.dist.samp.pconst">[rand.dist.samp.pconst]</a>:
</p>

<blockquote><pre>
template &lt;class RealType = double&gt; 
class piecewise_constant_distribution 
{ 
public:
    ...
    vector&lt;double&gt; <del>densities</del> <ins>probabilities</ins>() const;
    ...
};
</pre></blockquote>

<p>
Change 29.5.9.6.2 <a href="https://wg21.link/rand.dist.samp.pconst">[rand.dist.samp.pconst]</a>/6:
</p>

<blockquote><pre>
vector&lt;double&gt; <del>densities</del> <ins>probabilities</ins>() const;
</pre></blockquote>






</body>
</html>
