The correct answer is D. An undertaking constituted under a special enactment of either the Parliament or the State legislature.
A public corporation is a corporate body that is established by a special act of Parliament or a State legislature. It is an autonomous body that is not subject to the control of the government. Public corporations are usually set up to provide a public service, such as running a railway or a water supply system. They are also used to promote economic development or to regulate an industry.
Option A is incorrect because a public corporation is not necessarily set up for business purposes. It may be set up to provide a public service or to promote economic development.
Option B is incorrect because a public corporation is not necessarily a company registered under the Indian Companies Act. It may be set up under a special act of Parliament or a State legislature.
Option C is incorrect because a public corporation is not necessarily an undertaking constituted by any public authority. It may be set up under a special act of Parliament or a State legislature.