4 ms·
You are totally missing the point. The 3-tuple (1,2,9) may represent number 129 if you use the decimal expansion. What if you use a base-16 expansion, or a base
by Rod 17y ago
You are totally missing the point. The 3-tuple (1,2,9) may represent number 129 if you use the decimal expansion. What if you use a base-16 expansion, or a base-8 expansion? You can even choose the base so that the tuple -> number mapping is not injective (and, thus, not invertible).
So, you give me a number, and I can give you infinitely many n-tuples that can be transformed into that number. Unless you know the mapping, and unless the mapping is injective, a single number is useless. It could represent infinitely many images.
So, I ask again, how can an image be a number?
- jerf 17y agoIt is more proper to talk about the number + a decoding scheme. For given triple (image, image data, encoding scheme) any one can be held constant and the other two will have an infinite number of possibilities. In particular, any image can be represented as any set of data, plus an encoding scheme for that data. Trivial (but relevant) proof: The encoding scheme can simply hard code the image in question and trigger returning that image when it sees the held-constant image data. You could choose to represent an image as image data + decoding scheme, using an agreed representation of the decoding scheme such as a computer program. Mathematically we get nowhere because we are simply moving the encoding scheme around, but in practice, since we possess concrete encoding schemes it means we can practically discuss the situation better. This is a long-winded away of agreeing with you, BTW.
- Rod 17y agoThanks for wording it more precisely than I did. Most people are assuming that the mapping tuple -> number is known, while I am not. I could come up with my own invertible mapping. The cool thing would be this: - I carry a large number y with me - the police demands that I disclose y, and I do; they apply inverse mapping f^{-1} and obtain x = f^{-1}(y) which is a porn image - then I show the police that applying inverse mapping g^{-1}, one obtains a totally legit image z = g^{-1}(y) Of course, finding such a mapping g could be extremely difficult, but if the same number can be obtained from two different images, how would the police be able to accuse me of anything?
- Blasa 17y agoIt is fairly easy to find such mappings. Call the carried data the key. XOR the key data with any other image to get the encrypted file. Simply XOR the encrypted file with the key file to get the desired image. Finding small mappings is another matter.
- axod 17y agoThe simplest, and most common representation would be for a file to simply be a string of binary bits representing a large number. eg: big_number = 0; while(!feof(file)) { big_number = (big_number<<8) | file.readByte(); }
- Rod 17y agoI am pointing at the forest, and you're looking at the trees. We're not even talking about the same thing. I am taking a very high-level, abstract view of the problem. You're thinking of implementation.
- axod 17y agoRight. You're just saying there are an infinite number of ways you could convert a string of binary digits into a 'number'. Well sure :/ Of course there are. At the simplest form you could swap things around, represent a fractional part of a number etc, at the more complex side you just have encryption. But those are different things to your question "So, I ask again, how can an image be a number?"
- Rod 17y agoFor an image to be a number, I demand a one-to-one correspondence between images and numbers. Lacking that, I merely say that an image can be represented by a number, but this is trivial. Hence, I repeat: we're not even discussing the same thing.
- axod 17y ago>> "So, I ask again, how can an image be a number? >> "Lacking that, I merely say that an image can be represented by a number, but this is trivial" I think you're arguing with yourself at this point.
- Rod 17y agoNote that: "is" and "is represented by" are not the same on my book (which is obvious from the previous comments). If you want to counter-argument, try harder.
- almost 17y agoBut the same argument applies to the original "illegal prime" under discussion. Your original comment indicated that you considered the case of an image to be different and you asked how a prime could represent an image. In fact, I'd go as far as saying that you could apply your argument to any data stored on a computer. But someone I don't think a judge would be impressed by "there re infinity many things the data in this file could represent and only under one mapping is it an indecent image".
- deleted 17y ago[deleted]
- fizx 17y agoThink about Gödel numbering or Cantor diagonalization. Let's assume discrete, rectangular representations of images (width, height in pixels and colorspace of #000000-#FFFFFF). Here's an injective mapping from natural numbers (the indices of the vector of images) to actual images: # In a C-like language where ** is # the exponentiation operator, and # ints are unbounded. int colors = 0xFFFFFF + 1; int i = 0; vector images = new vector(); while(i++) { for(int width = 1; width < i; width++) { int height = i - width; int area = width * height; int pixels[area]; int combinations = colors ** area; for(int c = 0; c < combinations; c++) { for(int p = 0; p < area; p++) { pixels[p] = c % (colors ** (p + 1)); } images.append(new image(width, height, pixels)); } } }