Computational Synthesis research seeks formal algorimic procedures that combine low level building blocks or features to achieve given arbitrary high-level functionality. The main challenge is scaling synthesis algorithms so that they can achieve complex functionalities, and the paths of investigation deal with automatic composition of building blocks into useful modules, automatic abstraction of module functionality, and automatic hierarchical reuse of modules. This collection of papers brings together research presented and discussed at the 2003 AAAI spring symposium on Computational Synthesis. The symposium attempted to focus on domain-independent methods that address modularity, regularity, hierarchy and abstraction in synthesis. Recently there has been a surge of interest in these fundamental issues from three directions: AI researchers interested in scaling discovery processes, engineers interested in fully automated design, and, not the least, biologists interested in the origin of complexity. In organizing this symposium we tried to bring together researchers from these diverse fields to exchange ideas about common fundamental questions.