Scientific knowledge growth combines elements of existing theories into new proposed models, which is combinatorially intractable. Inspired by dual-system psychological theories, we conceptualize a knowledge creation process in two stages. Stage One narrows the space of existing computational elements based on contextual queues, supplying components from which a new model will be proposed. It is trained on large datasets but is computationally inexpensive at runtime. Stage Two permutes these elements in accordance with their explicit constraints, resulting in a set of proposed computable theories. We have developed a system that implements Stage Two. This system provides robust infrastructure for expressing constraints imposed by scientific theories, supplying a framework relating theory sub-graphs to experimental datasets stored in relational databases. We demonstrate an implementation of this two-stage approach solving materials chemistry problems using experimental datasets.