Computation and cognition. Toward a foundation for cognitive science