The goal of design synthesis is the generation of high-quality material designs from abstract specifications. Recent efforts in VLSI design synthesis (logic synthesis) have shown how heuristic techniques can generate human-quality hardware designs in a fraction of manual design time. Despite successes, the state of the art in logic synthesis is limited in terms of range and quality. Existing logic synthesis tools are largely restricted to designing combinational circuits described by Boolean equations. Such circuits compose only about 20 percent of a high-level design; the other 80 percent consists of complex components described in terms of their functionality, such as arithmetic and logic units, counters, and processors. Existing tools ar...