Constraint bidirectional

Hi I need to write a constraint when a certain signals have a condition upon which constrained signal can be less than a certain value and has to be even . I tried following but not sure if it’s right .

  !((a==4) && (b inside {1,3}))-> (c<=d;if(c%2) { c==c-1;});  

In reply to achandan:

It would help to show the declarations of all variables used in your constraint. Also helpful would be some example solutions you’re looking for. The constraint c==c-1 makes no sense as it would always be false.