use sets when testing user expressions

avoids ordering issues