this post was submitted on 17 Jul 2024
323 points (94.5% liked)

Programmer Humor

32476 readers
688 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 16 points 4 months ago* (last edited 4 months ago) (7 children)

Is there an algorithm or number such that we could basically pirate data from it by saying "start digit 9,031,643,679 with length 5,345,109 is an MP4 of Shrek"? Something that we could calculate in a day or less?

[–] [email protected] 22 points 4 months ago (1 children)

The short answer is no, and even if we could, the digit index you'd start at would have a larger binary representation than the actual data you were trying to encode.

[–] [email protected] 16 points 4 months ago (1 children)

An example I found: the string of digits 0123456789 occurs at position 17387594880. In this case, it took 11 digits to describe where to find a 10-digit number.

So I think such an algorithm would technically work, but your "start digit" would be so large it would use more data than just sending the raw file data. Not to mention the impossible amount of computing power needed.

[–] [email protected] 1 points 4 months ago

What if instead we utilized an algorithm, some code, that would ultimately generate the file? I could imagine a program that generates a number which ultimately is more dense than the program. For example, if we just-so-happened to need a million digits of Pi the program would be shorter than the number. Is there a way to tailor an algorithm to collapse down to any number? As an example, what if we needed a million digits of Pi but the last 10 digits need to be all 9s?

[–] [email protected] 8 points 4 months ago

Similarly: if you write a program to randomly run through all the combinations of pixels on a decently large screen (say, 1080p) you will eventually see every important question and answer that can be expressed on a screen.

[–] [email protected] 7 points 4 months ago (1 children)

Could we already do this by leveraging the Library of Babel?

Genuinely asking, I'm not really sure.

[–] [email protected] 0 points 1 month ago

you can bookmark(?) pages

[–] [email protected] 4 points 4 months ago

Conceptually this is basically just standard encryption: some math that spits out gibberish unless you have the info to make that gibberish become something useful.

[–] [email protected] 2 points 4 months ago (1 children)

I think if you can ridiculously compress the size down then maybe lol.

[–] [email protected] 3 points 4 months ago

Do you happen to know of any good algorithms or numbers? Pi gets harder to calculate with each digit, so it's not a great candidate.