1. An apparatus, comprising:a processor; and
a computer-readable storage medium storing a program to be executed by the processor, the program including instructions for:
generating a distance spectrum vector dTp=(dTp(1), . . . ,dTp(p)) of size p of a kernel Tp, wherein the kernel Tp has a size p×p, with p
generating a distance spectrum vector dGN of size N of a generator matrix GN on the basis of the distance spectrum vector dTp, wherein the generator matrix GN has a size N×N, the generator matrix GN is based on the kernel Tp;
determining a set of K information bit indices I on the basis of the distance spectrum vector dGN;
recording a polar code cN on the basis of the set of K information bit indices I, wherein the polar code cN has a length N and a dimension K, wherein the polar code cN is given by cN=uN·GN, wherein uN=(u0, . . . , uN-1) is a vector of size N,ui, i=0, . . . N?1, corresponding to an information bit if i?I, I being the set of K information bit indices, and ui=0, if i?F, F being a set of N?K frozen bit indices;
encoding first data using the recorded polar code cN; and
transmitting the encoded first data to a second apparatus.