A Unifying Approach For Proving Hardcore Predicates Using