Thanks for that ! I was really confused as to how interesect could be slower than the naive version and was just about to write a test case for large n.
I think either the naive version or intersect are easier for someone else reading through the code to understand rather than broadcasted in
with a Ref()