At the logic level, automatic tools can be used to locally transform the circuit and select realizations for its pieces from a precharacterized library so as to reduce transitions and parasitic capacitance at circuit nodes and therefor circuit power dissipation. At a higher level, various structural choices exist for realizing any given logic functions; for example, for an adder, one can select one of ripply-carry, carry-look-ahead or carry-select realizations.