Max Long

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • tjhnson@gmail.com

    Max Long

    How can I figure out the largest long available? I was hoping for
    something like sys.maxint, but I didn't see it. Also, can someone
    point me to where I can (concisely) read about size of such types
    (int, float, long).
  • Gary Herron

    #2
    Re: Max Long

    tjhnson@gmail.c om wrote:
    How can I figure out the largest long available? I was hoping for
    something like sys.maxint, but I didn't see it. Also, can someone
    point me to where I can (concisely) read about size of such types
    (int, float, long).
    >
    There is no explicit (defined) limit. The amount of available address
    space forms a practical limit.

    Gary Herron

    Comment

    • mensanator@aol.com

      #3
      Re: Max Long

      On Jan 21, 5:36 pm, Gary Herron <gher...@island training.comwro te:
      tjhn...@gmail.c om wrote:
      How can I figure out the largest long available?  I was hoping for
      something like sys.maxint, but I didn't see it.  Also, can someone
      point me to where I can (concisely) read about size of such types
      (int, float, long).
      >
      There is no explicit (defined) limit.  The amount of available address
      space forms a practical limit.
      But not the only limitation:
      >>import collatz_functio ns as cf
      >>for k in xrange(1,20):
      a = cf.Type12MH(k,1 )
      print 'number of digits in generation %2d:' %
      (k),cf.gmpy.num digits(a)

      number of digits in generation 1: 2
      number of digits in generation 2: 9
      number of digits in generation 3: 74
      number of digits in generation 4: 659
      number of digits in generation 5: 5926
      number of digits in generation 6: 53328
      number of digits in generation 7: 479940
      number of digits in generation 8: 4319453
      number of digits in generation 9: 38875064
      number of digits in generation 10: 349875565

      Traceback (most recent call last):
      File "<pyshell#1 2>", line 2, in <module>
      a = cf.Type12MH(k,1 )
      File "C:\Program Files\PyGTK\Pyt hon\lib\collatz _functions.py", line
      745, in Type12MH
      return TWO**(SIX*a - ONE) - ONE
      ValueError: mpz.pow outrageous exponent

      The power function can't do exponents that have 32 or more bits
      even if the memory can hold the resulting number.
      >
      Gary Herron

      Comment

      • tjhnson@gmail.com

        #4
        Re: Max Long

        On Jan 21, 3:34 pm, Bjoern Schliessmann <usenet-
        mail-0306.20.chr0n.. .@spamgourmet.c omwrote:
        tjhn...@gmail.c om wrote:
        How can I figure out the largest long available?
        >
        Why would you? AFAIK, longs are only limited by available memory.
        Indeed, as the docs pointed out. I guess I was confused by

        "If pylong is greater than ULONG_MAX, an OverflowError is raised."

        at http://docs.python.org/api/longObjects.html.

        Comment

        • Gabriel Genellina

          #5
          Re: Max Long

          En Mon, 21 Jan 2008 22:02:34 -0200, mensanator@aol. com
          <mensanator@aol .comescribió:
          On Jan 21, 5:36 pm, Gary Herron <gher...@island training.comwro te:
          >tjhn...@gmail. com wrote:
          How can I figure out the largest long available?  I was hoping for
          >>
          >There is no explicit (defined) limit.  The amount of available address
          >space forms a practical limit.
          >
          But not the only limitation:
          [...]
          Traceback (most recent call last):
          File "<pyshell#1 2>", line 2, in <module>
          a = cf.Type12MH(k,1 )
          File "C:\Program Files\PyGTK\Pyt hon\lib\collatz _functions.py", line
          745, in Type12MH
          return TWO**(SIX*a - ONE) - ONE
          ValueError: mpz.pow outrageous exponent
          >
          The power function can't do exponents that have 32 or more bits
          even if the memory can hold the resulting number.
          Isn't it a limitation of the gmpy library, not of the builtin long type?

          --
          Gabriel Genellina

          Comment

          • mensanator@aol.com

            #6
            Re: Max Long

            On Jan 21, 7:42 pm, "Gabriel Genellina" <gagsl-...@yahoo.com.a r>
            wrote:
            En Mon, 21 Jan 2008 22:02:34 -0200, mensana...@aol. com  
            <mensana...@aol .comescribió:
            >
            >
            >
            >
            >
            On Jan 21, 5:36 pm, Gary Herron <gher...@island training.comwro te:
            tjhn...@gmail.c om wrote:
            How can I figure out the largest long available?  I was hoping for
            >
            There is no explicit (defined) limit.  The amount of available address
            space forms a practical limit.
            >
            But not the only limitation:
            [...]
            Traceback (most recent call last):
              File "<pyshell#1 2>", line 2, in <module>
                a = cf.Type12MH(k,1 )
              File "C:\Program Files\PyGTK\Pyt hon\lib\collatz _functions.py", line
            745, in Type12MH
                return TWO**(SIX*a - ONE) - ONE
            ValueError: mpz.pow outrageous exponent
            >
            The power function can't do exponents that have 32 or more bits
            even if the memory can hold the resulting number.
            >
            Isn't it a limitation of the gmpy library, not of the builtin long type?
            Well, gmpy for sure. But as for Python's builtin
            longs, I wouldn't know as I've only got one lifetime.

            Python longs

            c:\python25\use r>long_ago.py
            1 2 0.0310001373291
            2 9 0.0310001373291
            3 74 0.0310001373291
            4 659 0.0620000362396
            5 5926 0.0620000362396
            6 53328 0.219000101089
            7 479940 63.5620000362
            8 4319453 8983.07800007
            9 <aborted after 8 hours - at this rate,
            it will take 796 years to finish generation 11>

            GMPY longs

            c:\python25\use r>long_ago.py
            1 2 0.0
            2 9 0.0160000324249
            3 74 0.0160000324249
            4 659 0.0160000324249
            5 5926 0.0160000324249
            6 53328 0.0160000324249
            7 479940 0.0160000324249
            8 4319453 0.0320000648499
            9 38875064 0.15700006485
            10 349875565 1.36000013351

            >
            --
            Gabriel Genellina- Hide quoted text -
            >
            - Show quoted text -

            Comment

            • Bjoern Schliessmann

              #7
              Re: Max Long

              tjhnson@gmail.c om wrote:
              Indeed, as the docs pointed out. I guess I was confused by
              >
              "If pylong is greater than ULONG_MAX, an OverflowError is raised."
              >
              at http://docs.python.org/api/longObjects.html.
              Take care -- this is about "unsigned long" data type of C, not a
              Python "long" instance.

              Regards,


              Björn

              --
              BOFH excuse #75:

              There isn't any problem

              Comment

              Working...