-- | prop> \ p q -> (p ~$ q) == (p `Apply` q)
-- prop> \ p q r -> (p ~$ q ~$ r) == (p ~$ (q ~$ r))
(~$) :: Proof -> Proof -> Proof
p ~$ q = p `Apply` q
(~$) :: Proof -> Proof -> Proof
p ~$ q = p `Apply` q
p ~$ q = p `Apply` q