Semismooth and Semiconvex Functions in Constrained Optimization