Every carry in an adder starts somewhere and travels some distance. Generate and propagate describe what each bit position does to a carry.
For bit i, with that bit's A and B:
- Generate Gᵢ = AᵢBᵢ. Both bits are 1, so the position creates a carry no matter what comes in.
- Propagate Pᵢ = Aᵢ ⊕ Bᵢ. Exactly one bit is 1, so the position passes an incoming carry on: 1 + carry = 2.
- Neither: both bits are 0, and any incoming carry stops here (carry kill).
That gives the carry recurrence:
Cᵢ₊₁ = Gᵢ + PᵢCᵢ
In words: a carry leaves bit i if bit i generates one, or if it propagates the one coming in. It's the full adder's with new names.
G and P depend only on A and B, so all of them are ready after one gate delay, in every bit at once. That's what makes a carry lookahead adder possible: substitute the recurrence into itself and every carry becomes a function of G's, P's and C0 alone.
Convention: this course uses the XOR form of P, so the sum is also Sᵢ = Pᵢ ⊕ Cᵢ. Some books use Pᵢ = Aᵢ + Bᵢ. The OR form gives the same carries, because when both bits are 1 G already forces the carry, but it can't be reused for the sum.