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