In the context of the Gene Ontology, contributes_to may be used only with classes from the molecular function ontology.
We would like to say if and only if exists c', p' c part_of c' and c' capable_of p and c capable_of p' and p' part_of p then c contributes_to p However, this is not possible in OWL. We instead make this relation a sub-relation of the two chains, which gives us the inference in the one direction.
eIF2: has three subunits (alpha, beta, gamma); one binds GTP; one binds RNA; the whole complex binds the ribosome (all three subunits are required for ribosome binding). So one subunit is annotated to GTP binding and one to RNA binding without qualifiers, and all three stand in the contributes_to relationship to "ribosome binding". And all three are part_of an eIF2 complex
ATP citrate lyase (ACL) in Arabidopsis: it is a heterooctamer, composed of two types of subunits, ACLA and ACLB in a A(4)B(4) stoichiometry. Neither of the subunits expressed alone give ACL activity, but co-expression results in ACL activity. Both subunits contribute_to the ATP citrate lyase activity.
Subunits of nuclear RNA polymerases: none of the individual subunits have RNA polymerase activity, yet all of these subunits contribute_to DNA-dependent RNA polymerase activity.