pub fn join<A: Prop, B: Prop, C: Prop>( f: Imply<A, C>, _: Imply<B, C>) -> Imply<And<A, B>, C>
(a => c) ∧ (b => c) => ((a ∧ b) => c).
(a => c) ∧ (b => c) => ((a ∧ b) => c)