This article describes a theory of scientific discovery learning which is an extension of Klahr and Dunbar''s model of Scientific Discovery as Dual Search (SDDS) model. We present a model capable of describing and understanding scientific discovery learning in complex domains in terms of the SDDS framework. The concepts of hypothesis space and experiment space, central to SDDS, are elaborated and used as a representation of the learner''s knowledge. Also, we introduce a taxonomy of search operations in hypothesis space which allows us to describe in detail the processes of discovery. Our ideas are tested against data of subjects who comment on the discovery processes of a simulated learner. It is found that the conditions for performance a search operation in hypothesis space include both sufficient knowledge of the search operation itself and reasons for choosing a specific search operation. Furthermore, a number of constraints on the search in hypothesis space is discussed: domain specific and generic prior knowledge, learning goals, and personality factors. We conclude with some recommendations for the design of discovery-based learning environments.