In Public Key Infrastructure, every key pair is associated with its life time. I don't understand why we have a life time when we have functionality such as certificate revocation list(crl) which tells the user when any key is invalid. That is we can use any key pair for infinite amount of time or till its purpose is finished (for e.g. the Organization for which the key pair was made closed). This way we can save the cost of renewing certificate when the new key is made.
The only intuitive answer (I got) is it reduces maintenance cost of CAs, since there will be loads of public keys it has to maintain. Otherwise, they can just scrap of keys whose time period is over.