C-K design theory or concept-knowledge theory is both a design theory and a theory of reasoning in design. It defines design reasoning as a logic of expansion processes, i.e. a logic that organizes the generation of unknown objects. The theory builds on several traditions of design theory, including systematic design, axiomatic design, creativity theories, general and formal design theories.