Although I, honestly, think that the reason is not important- considering the fact that the reason will not (can not) change the result, most companies would have no problem releasing their "reason," if it weren't for one teensy weensy problem: litigation.
Consider this: Alan owns a trucking company with three trucks and three drivers. Leroy, 74, has driven a truck for Alan for 15 years, averaging about 60K/year in wages during that time. Recently, Leroy was diagnosed with macular degeneration. He is going blind. According to the doctors, his sight will continue to worsen until he is completely blind.
Because of this, Leroy can no longer drive a truck for Alan (because he can not see to drive.) Leroy's truck route produced 1/3 of Alan's company's income each year. Since Leroy can not drive, Alan is faced with a choice: A) He can terminate Leroy and replace him with a truck driver who has good eyesight, thereby protecting the 1/3 of his income which Leroy's routes generate, or B) he can allow a blind Leroy to remain employed (but obviously not drive, since he is blind). This option would require Alan to hire another driver in addition to Leroy, which (since Leroy makes 60k, and a younger driver could be hired in at 30k) would reduce Alan's profits by 30k each year.
Because of the substantial loss in profits resulting from option B, Alan chooses to let Leroy go and hire a driver that can actually drive the truck. He sits down with Leroy and explains that he is really sorry, but since Leroy is no longer able to drive the truck, he is being fired. On his separation notice, Alan writes "Employee is terminated due to inability to perform assigned work tasks."
Leroy, angry with Alan after working with him for 15 years, feels that he has been wronged- that he was being fired because he was aging and no longer able to do the things he used to do. He finds a tort attorney, who promptly sues Alan for discrimination.
Alan's talks to his attorney, who tells him that because poor eyesight generally comes with old age, Leroy just might have a case- along with the fact that by hiring a younger driver to replace Alan, Alan's profits actually increase by 30k- giving Leroy yet another argument when the trial comes around. So the lawyer's advice to Alan: Hire another 74 year old driver.
If Alan had not given Leroy the courtesy of providing a reason, his profits would have increased by 30k, and he would have avoided the legal expenses. Leroy was not fired because he was old. He was fired because he couldn't perform his duties. These types of HR/legal nightmares are the reason why employers don't like to provide a reason to the employee.