A systematic polar encoder (300, 500) with data checks, comprising: a data mapper (310, 510) configured to receive an input data word d (301, 501) containing information to be polar coded for transmission and generate a modified data word d'(303, 503); a nonsystematic polar encoder (320, 400, 520) configured to receive the modified data word d' and generate a transform output z from a transform input u by computing a polar transform z = uG, wherein G is a transform matrix, wherein the transform matrix G is constrained by an input partition ( F, C, I, T) and an output partition ( P, J, R), wherein F, C, I, and T are subsets of indices of the transform input u, wherein P, J, and R are subsets of indices of the transform output z, wherein | C | > 0, G I,P = 0, G C,P = 0, G F, P = 0, G T,P is invertible, G I,J is invertible, G C,J = 0, and G F,J = 0, wherein the transform output z comprises: a punctured part z P satisfying z P = p for a puncture word p, the puncture word p being independent of the data word d and one of a void fixed word and a non-void fixed word, a part z J serving to carry data corresponding to the input data word d, and a part z R serving as redundant symbols to protect the carried data; wherein the transform input u comprises: a part u F satisfying u F = b for a fixed word b that is independent of the data word d, a part u C comprising a check word c comprising an output of a check generator function f operating on the modified data word d' and having at least one element that depends on the modified data word d', a part u I comprising the modified data word d', and a part u T satisfying u T = p ( G T, P) -1; wherein the systematic polar encoder is configured to combine the part z J and the part z R in a predetermined order to form a codeword x (302, 402, 502); and a transceiver configured to transmit the codeword x. a data mapper (310, 510) configured to receive an input data word d (301, 501) containing information to be polar coded for transmission and generate a modified data word d'(303, 503); a nonsystematic polar encoder (320, 400, 520) configured to receive the modified data word d' and generate a transform output z from a transform input u by computing a polar transform z = uG, wherein G is a transform matrix, wherein the transform matrix G is constrained by an input partition ( F, C, I, T) and an output partition ( P, J, R), wherein F, C, I, and T are subsets of indices of the transform input u, wherein P, J, and R are subsets of indices of the transform output z, wherein | C | > 0, G I,P = 0, G C,P = 0, G F, P = 0, G T,P is invertible, G I,J is invertible, G C,J = 0, and G F,J = 0, wherein the transform output z comprises: a punctured part z P satisfying z P = p for a puncture word p, the puncture word p being independent of the data word d and one of a void fixed word and a non-void fixed word, a part z J serving to carry data corresponding to the input data word d, and a part z R serving as redundant symbols to protect the carried data; a punctured part z P satisfying z P = p for a puncture word p, the puncture word p being independent of the data word d and one of a void fixed word and a non-void fixed word, a part z J serving to carry data corresponding to the input data word d, and a part z R serving as redundant symbols to protect the carried data; wherein the transform input u comprises: a part u F satisfying u F = b for a fixed word b that is independent of the data word d, a part u C comprising a check word c comprising an output of a check generator function f operating on the modified data word d' and having at least one element that depends on the modified data word d', a part u I comprising the modified data word d', and a part u T satisfying u T = p ( G T, P) -1; a part u F satisfying u F = b for a fixed word b that is independent of the data word d, a part u C comprising a check word c comprising an output of a check generator function f operating on the modified data word d' and having at least one element that depends on the modified data word d', a part u I comprising the modified data word d', and a part u T satisfying u T = p ( G T, P) -1; wherein the systematic polar encoder is configured to combine the part z J and the part z R in a predetermined order to form a codeword x (302, 402, 502); and a transceiver configured to transmit the codeword x.