add proof irrelevance