Optimality conditions and duality for semi-infinite mathematical programming problems with equilibrium constraints, using convexificators