Sorry, didn't see your earlier post. At any rate, a limited-precision real encoding must support efficient addition and multiplication, at least. Suppose we propose a fixed-width binary representation S = {k in Z : 0 <= k < 2^w} of the real numbers. We must also propose a mapping m such that real number a is represented as m(a) in S. Our encoding must support addition and multiplication: (a + b)' = m(m^-1(a) + m^-1(b)) (ab)' = m(m^-1(a)m^-1(b)) If the right sides can be simplified, or optimized using binary operations, this may be a useful representation. For asinh numbers, this seems not to be the case, we have (a + b)' = asinh(sinh(a') + sinh(b')) (ab)' = asinh(sinh(a')sinh(b)') Unless I am missing some magic simplification or algorithm, asinh addition and multiplication require at least an evaluation of a power series, which seems much more costly than a floating-point addition or multiplication.
-----Original Message----- From: math-fun [mailto:math-fun-bounces@mailman.xmission.com] On Behalf Of David Wilson Sent: Sunday, March 26, 2017 3:19 PM To: 'math-fun' Subject: Re: [math-fun] Beyond Floats: Next Gen Computer Arithmetic
What about these asinh numbers, is there a reference?
-----Original Message----- From: math-fun [mailto:math-fun-bounces@mailman.xmission.com] On Behalf Of Henry Baker Sent: Sunday, March 26, 2017 10:08 AM To: math-fun@mailman.xmission.com Subject: Re: [math-fun] Beyond Floats: Next Gen Computer Arithmetic
If I understood Gustafson's talk correctly, IEEE doubles aren't good enough. He showed some examples where IEEE quads (128 bits) weren't good enough.
Is there any way you could convert to Maxima bigfloats, do the operation, and convert back?
Bigfloats can be set to any precision you want.
Alternatively, could you convert to rationals, do the operation, and convert back? (This should be relatively easy -- if slow -- in most Common Lisp implementations.)
I'm not interested in speed, but in precision of the *representation*, as divorced from the precision of the operation itself.
I'll talk about this again in another post about "asinh numbers", which Yonemoto (Gustafson's programmer) dismissed out of hand to me as requiring table lookup.
At 11:03 PM 3/25/2017, you wrote:
For every operation, my implementation converts posits to IEEE doubles, performs the operation, and converts the result back to a posit by figuring out the number of fraction bits based on the exponent, and rounding the scaled fraction to an integer.
_______________________________________________ math-fun mailing list math-fun@mailman.xmission.com https://mailman.xmission.com/cgi-bin/mailman/listinfo/math-fun
_______________________________________________ math-fun mailing list math-fun@mailman.xmission.com https://mailman.xmission.com/cgi-bin/mailman/listinfo/math-fun