In this paper, we address the implementation of physical layer network coding (PNC) based on compute and forward (CF) in relay networks. It is known that the maximum achievable rates in CF-based transmission is limited due to the channel approximations at the relay. In this work, we propose the integer forcing precoder (IFP), which bypasses this maximum rate achievability limitation. Our precoder requires channel state information (CSI) at the transmitter, but only that of the channel between the transmitter and the relay, which is a feasible assumption. The overall contributions of this paper are three-fold. Firstly, we propose an implementation of CF using IFP and prove that this implementation achieves higher rates as compared to traditional relaying schemes. Further, the probability of error from the proposed scheme is shown to have up to 2 dB of gain over the existent lattice network coding-based implementation of CF. Secondly, we analyze the two phases of transmission in the CF scheme, thereby characterizing the end-to-end behavior of the CF and not only one-phase behavior, as in previous proposals. Finally, we develop decoders for both the relay and the destination. We use a generalization of Bezout's theorem to justify the construction of these decoders. Further, we make an analytical derivation of the end-to-end probability of error for cubic lattices using the proposed scheme.