This course is an introductionto the research traditions of computational approach to design from an historical, mathematical and theoretical perspective. The course develops a framework for understanding the role of generative methods in creative design synthesis and analysis. Afteroffering an exposition of the basic mathematical concepts such asthe notions of artificial language and the computational system, we discuss specific computational approaches to design (Alexander, March, Hillier, Stiny).