Hardware redundancy impacts size, weight, power consumption, and cost of a system. In some applications, it is preferable to use extra time rather than extra hardware to tolerate faults. In this chapter, we describe time redundancy techniques for detection and correction of transient faults. We also show how time redundancy can be combined with some encoding scheme to handle permanent faults. We consider four encoding schemes: alternating logic, recomputing with shifted operands, recomputing with swapped operands, and recomputing with duplication with comparison.