A method for wireless communications, comprising: performing an encoding process according to a polar code on a set of information bits to determine a set of coded bits; puncturing bits from the set of coded bits according to a first puncturing pattern to obtain a first subset of the set of coded bits; transmitting the first subset of the set of coded bits in a first transmission; determining a second puncturing pattern based at least in part on the first puncturing pattern, wherein determining the second puncturing pattern comprises: identifying a first set of binary representations for the first puncturing pattern, wherein each binary representation of the first set of binary representations comprises a set of binary bits corresponding to a bit index to puncture according to the first puncturing pattern; flipping, for the each binary representation of the first set of binary representations, a binary state for a bit of the set of binary bits corresponding to a first binary bit index across the first set of binary representations, wherein the flipping results in a second set of binary representations; and converting the second set of binary representations into the second puncturing pattern; puncturing bits from the set of coded bits according to the second puncturing pattern to obtain a second subset of the set of coded bits; and transmitting the second subset of the set of coded bits in a second transmission. performing an encoding process according to a polar code on a set of information bits to determine a set of coded bits; puncturing bits from the set of coded bits according to a first puncturing pattern to obtain a first subset of the set of coded bits; transmitting the first subset of the set of coded bits in a first transmission; determining a second puncturing pattern based at least in part on the first puncturing pattern, wherein determining the second puncturing pattern comprises: identifying a first set of binary representations for the first puncturing pattern, wherein each binary representation of the first set of binary representations comprises a set of binary bits corresponding to a bit index to puncture according to the first puncturing pattern; flipping, for the each binary representation of the first set of binary representations, a binary state for a bit of the set of binary bits corresponding to a first binary bit index across the first set of binary representations, wherein the flipping results in a second set of binary representations; and converting the second set of binary representations into the second puncturing pattern; identifying a first set of binary representations for the first puncturing pattern, wherein each binary representation of the first set of binary representations comprises a set of binary bits corresponding to a bit index to puncture according to the first puncturing pattern; flipping, for the each binary representation of the first set of binary representations, a binary state for a bit of the set of binary bits corresponding to a first binary bit index across the first set of binary representations, wherein the flipping results in a second set of binary representations; and converting the second set of binary representations into the second puncturing pattern; puncturing bits from the set of coded bits according to the second puncturing pattern to obtain a second subset of the set of coded bits; and transmitting the second subset of the set of coded bits in a second transmission.