計算機プログラムの構造と解釈 第二版 P163 問題3.29
アレだ、ド・モルガンの法則だ。
andとnotでどうやってorを表すか考えればいい。
(define (or-gate a1 a2 output) (let ((o1 (make-wire)) (o2 (make-wire)) (o3 (make-wire))) (inverter a1 o1) (inverter a2 o2) (and-gate o1 o2 o3) (inverter o3 output)))
遅延は、
inverter-delay * 3 + and-gate-delay
動かしてないからあってるかはよくわからない。