  This article shows that any type of binary data can be defined as a
collection from codewords of variable length. This feature helps us to define
an Injective and surjective function from the suggested codewords to the
required codewords. Therefore, by replacing the new codewords, the binary data
becomes another binary data regarding the intended goals. One of these goals is
to reduce data size. It means that instead of the original codewords of each
binary data, it replaced the Huffman codewords to reduce the data size. One of
the features of this method is the result of positive compression for any type
of binary data, that is, regardless of the size of the code table, the
difference between the original data size and the data size after compression
will be greater than or equal to zero. Another important and practical feature
of this method is the use of symmetric codewords instead of the suggested
codewords in order to create symmetry, reversibility and error resistance
properties with two-way decoding.
