Is there an iOS lifecycle policy - i.e. which older devices a new iOS release supports? This question gives useful information on iOS 4.3 support. However is there a publicly available policy for future iOS versions on which devices they will support? For example, do they always support two previous generations of hardware, or does it vary according to each release?

If there is no official policy, what does the trend seem to be?
I'm unaware of official policy but in my experience (opinion?) Apple supports older devices with new OSs as long as it is technically reasonable to do.

There are those that hold that Apple will use an OS or feature update to push the sale of new devices (i.e. Siri only available on iPhone 4S) but I have yet to see conclusive proof of this. Apple seems able to sell boatloads of phones (pads, pods and computers) without forcing the market and, in all cases that I've seen, there are equally plausible, and less "evil", explanations for Apple's decision.