When I use the Advanced Search or Search Builder to select a dataset the returned contacts are correct. If I do the same search using in CiviReport with the same search criteria one contact is displayed twice. If from the advanced search I create a smart group the group contains the correct number of contacts. If I then use CiviReport and search using the smart group one of the contacts is shown twice.
I have looked at the database to see if I can understand what might be causing this without success. It is possible that it has happened after merging the erroneous contact but I am not certain.