scheme :: CIRCCMB3:sch 12
OneGate4Result{ F1() -> object , F2() -> object , F3() -> object , F4() -> object , F5() -> non empty finite set , F6( object , object , object , object ) -> Element of F5(), F7() -> Function of (4 -tuples_on F5()),F5() } :
for s being State of (1GateCircuit (<*F1(),F2(),F3(),F4()*>,F7()))
for a1, a2, a3, a4 being Element of F5() st a1 = s . F1() & a2 = s . F2() & a3 = s . F3() & a4 = s . F4() holds
(Result s) . (Output (1GateCircStr (<*F1(),F2(),F3(),F4()*>,F7()))) = F6(a1,a2,a3,a4)
provided
A1: for g being Function of (4 -tuples_on F5()),F5() holds
( g = F7() iff for a1, a2, a3, a4 being Element of F5() holds g . <*a1,a2,a3,a4*> = F6(a1,a2,a3,a4) )