added a RUP proof checker and its soundness proof