be the 32-bit initial values of the generator state given by



where
is a seed. The seed is typically different for each transport block and each round in the HARQ protocol. It can be also used for layer 1 encryption.
The state recursions at iteration
are given by






and the output of the generator is
.
Let
be the number of coded bits after puncturing,
be the number of input bits and
be the number bits per symbol
. Let the input sequence be denoted
. The Tausworthe puncturing procedure is achieved according to the following algorithm for a rate 1/2 binary code:
1. Based on
,
check that the rate falls between (
,
), otherwise declare an error.
2. Set the number of punctured bits to
.
3. Initially mark all
coded bits to be transmitted.
4. Set the initial seed of the Tausworthe to the function value 
5. Set
.
6. Set 
7. Let
be the
output of the Tausworthe generator and 
8. if
and
is not already punctured go to 10
9. goto 7
10. Mark
as punctured for
.
11. Set 
12. if
goto 7
1.4.7