Next Types Are Theorems; Programs Are Proofs 13

Another proof

1Assume a
2Assume b
3From (2) and (1), conclude ba (→I)(discharges 2)
4From (1) and (3), conclude a → (ba) (→I)(discharges 1)

1Assume a
2Assume b
3From (2) and (1), conclude ba (→I)(discharges 2)
4From (2) and (3), conclude b → (ba) (→I)(discharges 2)

1Assume a
2Assume b
3From (2) and (1), conclude ba (→I)(discharges 2)
4From (2) and (3), conclude b → (ba) (→I)(discharges 2)
5From (1) and (4), conclude a → (b → (ba)) (→I)(discharges 1)

         foo a = \b -> (\b -> a)          :: a -> (b -> (b -> a))

Next Next