The Mechanical Generation of Fault Trees for Reactive Systems via Retrenchment I: Combinational Circuits