https://redmine.ruby-lang.org/https://redmine.ruby-lang.org/favicon.ico?17113305112014-09-23T06:22:09ZRuby Issue Tracking SystemRuby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=490692014-09-23T06:22:09Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul><li><strong>File</strong> <a href="/attachments/4712">update_rdoc_for_Math.log.PATCH</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/4712/update_rdoc_for_Math.log.PATCH">update_rdoc_for_Math.log.PATCH</a> added</li></ul><p>I'd forgotten to update RDoc. So I add new patch for updating RDoc.</p>
<p>gogo.</p> Ruby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=490742014-09-23T16:32:06Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul></ul><p>After I thought twice about that,</p>
<p>I came to the conclusion that <code>1.0</code> should be considered as <code>1 + ε (infinitesimal)</code></p>
<p>In terms of ↓</p>
<pre><code>1/0.0
=> Infinity
</code></pre>
<p>so below behave does make sense.↓</p>
<pre><code># For all 0 <= n < 1
Math.log(n, 1.0)
=> -Infinity
# For all n > 1
Math.log(n, 1.0)
=> Infinity
</code></pre>
<p>But when a base is exact <code>1</code>, it doesn't make sense still.↓</p>
<pre><code># For all 0 <= n < 1
Math.log(n, 1)
=> -Infinity
# For all n > 1
Math.log(n, 1)
=> Infinity
</code></pre>
<p>We can say some for <code>0.0</code> or exact <code>0</code></p>
<p>So I wanna make changes in patchs, if anybody have free time, please remove these patchs.</p>
<p>thank you. gogo.</p> Ruby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=498782014-11-10T22:33:43Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul></ul><p>Associated revision <a href="https://bugs.ruby-lang.org/issues/10474" class="external">10474</a></p> Ruby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=501862014-11-29T20:31:31Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul></ul><p>ping</p> Ruby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=502652014-12-03T03:52:49Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul></ul><p>Associated revision <a href="https://bugs.ruby-lang.org/issues/10487" class="external">10487</a></p> Ruby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=502662014-12-03T04:04:18Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul></ul><p>Hi there. I'm just gonna add a explain.</p>
<pre><code class="ruby syntaxhl" data-language="ruby"><span class="no">Math</span><span class="p">.</span><span class="nf">log</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="c1">#=> NaN</span>
<span class="no">Math</span><span class="p">.</span><span class="nf">log</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span>
<span class="c1">#=> -Infinity</span>
<span class="no">Math</span><span class="p">.</span><span class="nf">log</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span>
<span class="c1">#=> -Infinity</span>
<span class="no">Math</span><span class="p">.</span><span class="nf">log</span><span class="p">(</span><span class="o">-</span><span class="mf">0.0</span><span class="p">,</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span>
<span class="c1">#=> -Infinity</span>
<span class="no">Math</span><span class="p">.</span><span class="nf">log</span><span class="p">(</span><span class="o">-</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="c1">#=> Math::DomainError: Numerical argument is out of domain - "log"</span>
</code></pre>
<p>All these examples should raise Math::DomainError. right?</p>
<p>I wish this issue would be solved by 12/25(JST).</p>
<p>Anyway I can't wait for 2.2.0, thank you for your jobs always :)</p>
<p>P.S. I've just make sure <code>Math::log</code> with a negative base is fixed at <a href="https://bugs.ruby-lang.org/issues/9797" class="external">#9797</a>, thank you so much!!!</p>
<p>I'm really appreciate it! but, this issue about <code>Math.log with base 0 or 1</code> still remain.</p> Ruby master - Feature #10255: Math.log: check domain of base argumenthttps://redmine.ruby-lang.org/issues/10255?journal_id=512352015-01-27T02:32:07Zgogotanaka (Kazuki Tanaka)mail@tanakakazuki.com
<ul></ul><p>Related to <a href="https://bugs.ruby-lang.org/issues/10785" class="external">https://bugs.ruby-lang.org/issues/10785</a></p>