_{i}which is encoded using a k=7 r=1/2 convolutional decoder into

y

_{I}= [u

_{0},v

_{0},u

_{1},v

_{1},...] ,

with

u

_{i}= a

_{j}x

_{i+j}and v

_{i}= b

_{j}x

_{i+j},

where "+" denotes XOR and repeated indices are summed over from 1 to 7.

The property used to find a,b is the following:

b

_{j}u

_{j+i}= a

_{j}v

_{j+i}. (*)

For this we start with the full state space of 127×127 values of a,b. For each pair (u

_{i}, v

_{i}) the property (*) is evaluated and states which fail it are pruned from the search space.

The screen shot below shows the output of a simple octave script demonstrating this approach where further details of this algorithm can be found. For an encoded random bit sequence, after consuming about 28 encoded bits y

_{I}, (

*i.e.*, 14 iterations), the correct a,b values are found.

Output of signal-analysis/m/test_conv.m |

This method must be already known and I would be grateful if someone showed me a reference to it.