Hacker News new | ask | show | jobs
by h0mEDw 2723 days ago
Yeah I meant that there's another layer to the symbolic representation of "sqrt(2)" than just the tree of operation, so that you can ask sensible questions about the value of the number. For instance a generator of decimal representation or a function like "given N return a fraction q/p that's within 1/2^N of the value".

And floats are really a whole other beast than fractions or naturals or real numbers. As I wrote earlier - the "+" operator isn't associative. Python snippet:

    def before():
        x = 0.0
        x += 1.0
        for i in xrange(1000):
            x += 1e-17
        return x

    def after():
        x = 0.0
        for i in xrange(1000):
            x += 1e-17
        x += 1.0
        return x


    print before() == 1.0
    print after() == 1.0

Will print:

   True
   False
1 comments

Rewrite your functions to be generator functions. They don't even need to be based on the desired level of precision to always be decidable.
Not sure what your point is. I can just suggest to see the PDF: https://news.ycombinator.com/item?id=18411935