Smart Album to exclude a Person doesn't work - very weird
I notice that when I create a smart album to exclude a certain Person (e.g. Person : does not include : Fred) it doesn't work. It excludes a small number of photos of Fred but most photos of Fred still appear in the Smart Album, even though Fred's face is clearly detected and identified in them. The same thing happens if I use "is not" instead of "does not include". Interestingly, it works ok in the reverse (Person : includes : Fred), so something is wrong with the negative rules only.
If I tag photos with keywords corresponding to the people's names and then do (Keyword : is not : Fred) then it works fine, so it is just a problem with People/Faces.
A clear demonstration of this error is if you create a Smart Album with the rule (Person : is : Fred) AND (Person : is not : Fred). There should be no photos in this Smart Album, right? because Fred can't be both in and not-in a Photo (not in this universe anyway). However, what I get is a Smart Album which includes most but not all photos of Fred and I can't find any pattern as to why some are included and others aren't.
Could this mean that my Photos library is corrupted in some way? I notice that lots of features related to People and Faces have been unstable since the move to Catalina.
MacBook Air 13", macOS 10.15