a and c can be anything: function, algebraic type, ...
That's the thing. Prod a [c] leaves plenty of room.