I think there are a others things that should be considered when aswering this question.
1. Is the software being built for in-house use or for an enternal market. I would never ask Microsoft for their test cases for a product, but if I was having a custom appliction developed, I have asked for the suppliers test cases. For our projects the customer asks for our test cases all the time. While the previous poster mentioned different perspectives for function vs UAT testing, I am still doing some business process tests during functional testing.
2. The product under test may be unfamiliar to the business users so depending on the level of detail, they may be using them as training type documents to help understand how they should construct those tests. I have also done the reverse where I have asked the business for some of their test cases to better understand how they function as a business. Often business representatvies sit with the IT team during testing and testing is done concurrently or in parallel due to this lack of knowledge. It can be a learning experince for both on how to better test applications.
3. One of the purposes of testing is to collect information on wheter the system is ready for production/acceptance. The business partner often has a large voice in this decision so sharing our tests and the results of our tests helps to provide a level of confidence that the system can go live.
I don't advocate that the client just rerun the test verbatum, I don't think there is an ethical question if they do, but the client is your partner in the development effort and ensuring everyone is on the same page with regards to functioanilty and fit for use the better off you will be in the long run.