Skip to content

Posts from Quiz Auto-translated

5.0 (1 rating)
User Avatar
#1037
Auto-translated
No, the algorithm is flawed. But I tried.

Added 18 hours and 50 minutes ago
There are only 16 possible message variations. The first 4 bits represent the message itself. The 5th bit is 0 if the number of 1s in the message is even (i.e., zero, two, or all 1s), and 1 if it's odd (one or three 1s). Therefore, if there's an error in the message itself or in the 5th bit, it's immediately apparent. There's no situation where there's an error, but it's not obvious. I've come up with what to do next, but it's clearly not quite right, although the underlying idea seems valid and might be useful. At the very least, if the first 5 bits match, the last 2 bits can be anything, including uncorrupted, and we can still read the message. And if there's an error here, we can hope to extract some benefit from the 6th and 7th bits, which will definitely be reliable if the error is visible in the first five. I tried a variation where the 6th bit checks the parity of 1s among bits 2-5, and the 7th bit checks the parity among bits 5-6. Perhaps it's worth trying something different, for example, parity among 1-2 and 3-4.

Added 18 minutes ago
For example, write a 1 in the 6th bit if the number of 1s among 1-2 and 5 is zero or one, and 0 if it's two or three. Similarly, write the number of 1s among bits 3-5 in the 7th bit.
User Avatar
#1038
Auto-translated
I need the final version of the answer.
Well, if no one guesses it today, I'll post the solution.
Всё не так плохо как Вы думаете. Всё намного хуже!
User Avatar
#1039
Auto-translated
I just can't wrap my head around it. With the method above, I eliminate cases where there is no error or the error is in the check bits, and I can identify 2 bits in the message that contain the error – that is, I get, in the worst case, 2 options, one of which is correct.
In reply to Uranium235
User Avatar
#1040
Auto-translated
There are a total of 16 possible message variations.
The first 4 bits represent the message itself.
The 5th bit is 0 if the number of 1s in the message is even (i.e., zero 1s, or two 1s), and 1 if it's odd (one 1 or three 1s).
Therefore, if there's an error in the message itself or in the 5th bit, it's immediately apparent. And there's no situation where there's no error, and it's not obvious.

For example, let's say we receive the message 11100**.
How do we know if there were an even number of 1s, and the first bit was corrupted from 0 to 1? Or the second? Or the third? Or maybe the fourth was changed from 1 to 0? Or maybe the fifth bit was corrupted, but the information part is correct?
Всё не так плохо как Вы думаете. Всё намного хуже!
User Avatar
#1041
Auto-translated
Hermit, please wait until tomorrow. Don't post the answer yet. I agree with Uranus that 3 bits should control the information. What's the deal with what to add or multiply, I want to try it out in the morning. That is, I know that I need to look it up in the wiki to solve this. But I don't remember this algorithm at all from memory.
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..
Знание некоторых закономерностей освобождает от изучения многих фактов.
Мечты сбываются рано или поздно, так или иначе.
User Avatar
#1042
Auto-translated
Well, for example, we received the message 11100***.
How do we understand if there was an even number of ones, and the first bit was corrupted from 0 to 1? Or the second? Or the third? Or maybe the fourth was changed from 1 to 0? Or maybe the fifth bit was corrupted, but the information part is correct?
There's no way to tell which one. But it's clear that the error is among the first 5 bits, and there definitely is an error.
In reply to Sesame
User Avatar
#1043
Auto-translated
Sesame
Hermit, please wait until tomorrow. Don't post the answer.
I agree with Uranium that 3 bits should control the information. What's the deal with what to add or multiply? I want to try it out in the morning.
That is, I know that I need to look it up in the wiki to solve this. But I absolutely don't remember this algorithm from memory.
Okay :)

Added 32 seconds ago
Uranium235
No, it's not clear which one it is. But it's clear that the error is among the first 5 bits, and it definitely exists.
I agree.

Added 9 minutes ago
Sesame
That is, I know that I need to look it up in the wiki to solve this. But I absolutely don't remember this algorithm from memory.
No, you don't need to look anything up in the wiki, and I'm not even sure there's anything there. This is almost entirely a puzzle that requires quick thinking. It requires very little specialized knowledge. At least, I solved it without any wikis, googling, reading books on error-correcting codes, etc.
Всё не так плохо как Вы думаете. Всё намного хуже!
User Avatar
#1044
Auto-translated
I have only checked the consistency of the condition so far. The idea is that the transaction has 7 bits, the message has 4 bits, and there are 8 possible locations for the error (from the first to the seventh bit, as well as the absence of an error), which is 3 bits. In total, the size of the transaction is equal to the size of the message plus the error information, so a solution should exist.
 

К А
Стикеры GBF в Telegram
In reply to Sesame
User Avatar
#1045
Auto-translated
Sesame
But I don't remember this algorithm at all.
You don't need to remember it. You need to come up with it. :)
And please, don't use Wikipedia or search engines!
Всё не так плохо как Вы думаете. Всё намного хуже!
User Avatar
#1046
Auto-translated
I'm not sure, but it seems to me that a hash sum of this kind might work: (-1)*(bit1) + 2*(bit2) - 3*(bit3) + 4*(bit4) That is, examples of messages: 0000 (main part) 000 (hash sum) 0001 100 0010 101 0011 001 0100 010 1000 111 But I find it difficult to prove or disprove that this will work. At first glance, it seems that there are errors. However, it is possible that I simply overlooked a situation where this is not the case.
 

К А
Стикеры GBF в Telegram
In reply to Ment
User Avatar
#1047
Auto-translated
Ment
I don't know, but for some reason, it seems to me that a hash sum of this kind might work:
-1*(bit1) + 2*(bit2) - 3*(bit3) + 4*(bit4)
That is, examples of messages:
0000 (main part) 000 (hash sum)
0001 100
0010 101
0011 001
0100 010
1000 111

But I find it difficult to prove or disprove that this will work. At first glance, it seems that there are errors. However, it is possible that I simply missed a situation where this is not the case.

I didn't quite understand how to create a sequence if there are negative numbers, but here's a question: let's say we received 0001000. How do we know if this was 0000000 and the fourth bit was corrupted from 0 to 1, or 0001100 and the fifth bit was corrupted from 1 to 0?
Всё не так плохо как Вы думаете. Всё намного хуже!
In reply to Hermit
User Avatar
#1049
Auto-translated
Hermit
And please, don't use Wikipedia or search engines!
Yes, we вроде agreed on this at the beginning of the quiz.

In general, I looked at what was suggested here and propose not to transmit the original message at all. Or rather, like this.
Let the original message consist of 4 bits: i1, i2, i3, i4
Then we transmit the following:
bit1: i1
bit2: i1
bit3: i2
bit4: xor(i1, i2)
bit5: xor(bit4, i3)
bit6: xor(bit5, i4)
bit7: xor(i3, i4)

I haven't checked all cases, but at first glance, there is a double check everywhere, and it is possible to determine which bit is faulty and its actual value.

It's just that the example turned out to be not very simple. Perhaps someone will find a simpler solution.

Added 7 minutes later
xor (0,0) = 0
xor (0,1) = 1
xor (1,0) = 1
xor (1,1) = 0

i.e., this checks whether the operands are the same or different.

Example.
It is necessary to transmit 1 1 1 1
We transmit 1 1 1 0 1 0 0
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..
Знание некоторых закономерностей освобождает от изучения многих фактов.
Мечты сбываются рано или поздно, так или иначе.
In reply to Sesame
User Avatar
#1050
Auto-translated
Sesame


However, this turned out to be a rather difficult example. Perhaps someone will find a simpler solution.

Let's see what we can do now.

Added 17 minutes later
Yes, indeed, the example is not easy, but let's still try to encode and transmit the combination
1110

b1=1
b2=1
b3=1
b4=0
b5=1
b6=1
b7=1

That is, 1110111
So, if we received 1110111, it means he sent 1110 and no bit was corrupted.

Now let's try to encode and transmit the combination
1101

b1=1
b2=1
b3=1
b4=0
b5=0
b6=1
b7=1

That is, 1110011

What if he was actually transmitting 1101, and not 1110, and the fifth bit was simply corrupted from 0 to 1?

Now I'll just check myself to make sure I calculated everything correctly.

Added 3 minutes later
It seems correct, but the example is indeed not easy. :)
Всё не так плохо как Вы думаете. Всё намного хуже!
User Avatar
#1051
Auto-translated
I'll look for something simpler tomorrow
and I'll double-check this one as well.
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..
Знание некоторых закономерностей освобождает от изучения многих фактов.
Мечты сбываются рано или поздно, так или иначе.