How about ANY FINITE SEQUENCE AT ALL?

    • db0@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      8
      arrow-down
      1
      ·
      edit-2
      3 days ago

      Thats very cool. It brings to mind some sort of espionage where spies are exchanging massive messages contained in 2 numbers. The index and the Metadata length. All the other spy has to do is pass it though pifs to decode. Maybe adding some salt as well to prevent someone figuring it out.

    • somenonewho@feddit.org
      link
      fedilink
      arrow-up
      1
      ·
      2 days ago

      Thanks. I love these kind of fun OpenSource community projects/ideas/jokes whatever. The readme reminds me of ed

    • Arfman@aussie.zone
      link
      fedilink
      arrow-up
      3
      ·
      2 days ago

      I’m a layman here and not a mathematician but how does it store the complete value of pi and not rounded up to a certain amount? Or do one of the libraries generate that?

      • lukewarm_ozone@lemmy.today
        link
        fedilink
        English
        arrow-up
        9
        ·
        2 days ago

        You generate it when needed, using one of the known sequences that converges to π. As a simple example, the pi() recipe here shows how to compute π to arbitrary precision. For an application like pifs you can do even better and use the BBP formula which lets you directly calculate a specific hexadecimal digit of π.

    • NotMyOldRedditName@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      2 days ago

      I can’t tell if this is a joke or real code… like for this sentence below.

      The cat is back.

      Will that repo seriously run until it finds where that is in pi? However long it might take, hours, days, years, decades, and then tell you, so you can look it up quickly?

      • lukewarm_ozone@lemmy.today
        link
        fedilink
        English
        arrow-up
        8
        ·
        edit-2
        2 days ago

        I can’t tell if this is a joke or real code

        Yes.

        Will that repo seriously run until it finds where that is in pi?

        Sure. It’ll take a very long while though. We can estimate roughly how long - encoded as ASCII and translated to hex your sentence looks like 54686520636174206973206261636b. That’s 30 hexadecimal digits. So very roughly, one of each 16^30 30-digit sequences will match this one. So on average, you’d need to look about 16^30 * 30 ≈ 4e37 digits into π to find a sequence matching this one. For comparison, something on the order of 1e15 digits of pi were ever calculated.

        so you can look it up quickly?

        Not very quickly, it’s still n log n time. More importantly, information theory is ruthless: there exist no compression algorithms that have on average a >1 compression coefficient for arbitrary data. So if you tried to use π as compression, the offsets you get would on average be larger than the data you are compressing. For example, your data here can be written written as 30 hexadecimal digits, but the offset into pi would be on the order of 4e37, which takes ~90 hexadecimal digits to write down.