Make sure that unexpected term errors produce all legal values rather
than just some
Use Objects.equals for equality check