You would probably have to do the same for any 4xx code: I would expect this kind of validation to return more info than just "not valid". It should include details about why - and that needs to be included in the body.
But, since your resource is a validation resource, I would expect that any expected output of the validation should be 200 indicating "I did the validation - and the validation process ran 200 OK. Here is the result: X is too small, Y should be a date, Z+W should be a prime number..
If your resource returns 400 it would indicate "I did try to run the validation, but the input you supplied is not valid (I do not understand it), so I cannot do the validation you asked me to do".
There is a "meta level" involved here which playes with your normal understanding of the status codes :-)
/Jørn