/* dtr(ndtr(Q),A,C) --> [npnTr(Q,A,C,A)]. */ subset(dtr(ndtr(Q),A,C),_2156,_2157) :- member_rest(npnTr(Q,A,C,A),_2156,_2157). /* dtr(pdtr(Q),A,C) --> [pnpTr(Q,C,A,C)]. */ subset(dtr(pdtr(Q),A,C),_4637,_4638) :- member_rest(pnpTr(Q,C,A,C),_4637,_4638). /* res(X,A,B) --> [resistor(X,A,B)]. */ subset(res(X,A,B),_6835,_6836) :- member_rest(resistor(X,A,B),_6835,_6836). /* res(X,A,B) --> [resistor(X,B,A)]. */ subset(res(X,A,B),_8951,_8952) :- member_rest(resistor(X,B,A),_8951,_8952). /* vbeReg(vreg(D,R),Vp,Com,Out) --> dtr(D,Out,Com), res(R,Vp,Out). */ subset(vbeReg(vreg(D,R),Vp,Com,Out),_12040,_12041) :- subset(dtr(D,Out,Com),_12040,_12053), subset(res(R,Vp,Out),_12053,_12041). /* cSink(sink(VR,Q),In,Com) --> vbeReg(VR,_13718,Com,B), [npnTr(Q,B,Com,In)]. */ subset(cSink(sink(VR,Q),In,Com),_15821,_15822) :- subset(vbeReg(VR,_13718,Com,B),_15821,_15834), member_rest(npnTr(Q,B,Com,In),_15834,_15822). /* cSink(sink(VR,Q),In,Com) --> test(vbeReg(VR,_17576,Com,B)), [npnTr(Q,B,Com,In)]. */ subset(cSink(sink(VR,Q),In,Com),_19779,_19780) :- subset(vbeReg(VR,_17576,Com,B),_19779,_19800), member_rest(npnTr(Q,B,Com,In),_19779,_19780). /* eCoupledPair(ecup(Q1,Q2),B1,B2,E,C1,C2) --> [npnTr(Q1,B1,E,C1)], [npnTr(Q2,B2,E,C2)]. */ subset(eCoupledPair(ecup(Q1,Q2),B1,B2,E,C1,C2),_24147,_24148) :- member_rest(npnTr(Q1,B1,E,C1),_24147,_24160), member_rest(npnTr(Q2,B2,E,C2),_24160,_24148). /* activeLoad(al(D,Q),Ref,Vp,Ld) --> dtr(D,Vp,Ref), [pnpTr(Q,Ref,Vp,Ld)]. */ subset(activeLoad(al(D,Q),Ref,Vp,Ld),_28103,_28104) :- subset(dtr(D,Vp,Ref),_28103,_28116), member_rest(pnpTr(Q,Ref,Vp,Ld),_28116,_28104). /* sDiffAmp(sdAmp(EC,AL,CS),B1,B2,C1,Vp,Vm) --> eCoupledPair(EC,B1,B2,E,C1,C2), activeLoad(AL,C2,Vp,C1), cSink(CS,E,Vm). */ subset(sDiffAmp(sdAmp(EC,AL,CS),B1,B2,C1,Vp,Vm),_33348,_33349) :- subset(eCoupledPair(EC,B1,B2,E,C1,C2),_33348,_33361), subset(activeLoad(AL,C2,Vp,C1),_33361,_33374), subset(cSink(CS,E,Vm),_33374,_33349). /* commonEmitter(pnpCE(Q,CS),In,Out,Vp,Vm) --> [pnpTr(Q,In,Vp,Out)], cSink(CS,Out,Vm). */ subset(commonEmitter(pnpCE(Q,CS),In,Out,Vp,Vm),_37911,_37912) :- member_rest(pnpTr(Q,In,Vp,Out),_37911,_37924), subset(cSink(CS,Out,Vm),_37924,_37912). /* emitterFollower(npnEF(Q,R),In,Out,Vp,Vm) --> [npnTr(Q,In,Out,Vp)], res(R,Out,Vm). */ subset(emitterFollower(npnEF(Q,R),In,Out,Vp,Vm),_41936,_41937) :- member_rest(npnTr(Q,In,Out,Vp),_41936,_41949), subset(res(R,Out,Vm),_41949,_41937). /* opAmp(opAmp1(DA,CE,EF),In1,In2,Out,Vp,Vm) --> sDiffAmp(DA,In1,In2,O1,Vp,Vm), commonEmitter(CE,O1,O2,Vp,Vm), emitterFollower(EF,O2,Out,Vp,Vm), [terminal(T1,In1)], [terminal(T2,In2)], [terminal(T3,Out)], [terminal(T4,Vp)], [terminal(T5,Vm)]. */ subset(opAmp(opAmp1(DA,CE,EF),In1,In2,Out,Vp,Vm),_50782,_50783) :- subset(sDiffAmp(DA,In1,In2,O1,Vp,Vm),_50782,_50795), subset(commonEmitter(CE,O1,O2,Vp,Vm),_50795,_50808), subset(emitterFollower(EF,O2,Out,Vp,Vm),_50808,_50821), member_rest(terminal(T1,In1),_50821,_50834), member_rest(terminal(T2,In2),_50834,_50847), member_rest(terminal(T3,Out),_50847,_50860), member_rest(terminal(T4,Vp),_50860,_50873), member_rest(terminal(T5,Vm),_50873,_50783). /* cap(X,A,B) --> [capacitor(X,A,B)]. */ subset(cap(X,A,B),_55528,_55529) :- member_rest(capacitor(X,A,B),_55528,_55529). /* cap(X,A,B) --> [capacitor(X,B,A)]. */ subset(cap(X,A,B),_57644,_57645) :- member_rest(capacitor(X,B,A),_57644,_57645). /* lowpassFilter(lpf(X),A,B) --> cap(X,A,B). */ subset(lowpassFilter(lpf(X),A,B),_59796,_59797) :- subset(cap(X,A,B),_59796,_59797). /* cSink(sink2(VS,Q,R),In,Com) --> [npnTr(Q,B,E,In)], res(R,E,Com), vSource(VS,B,Com). */ subset(cSink(sink2(VS,Q,R),In,Com),_63843,_63844) :- member_rest(npnTr(Q,B,E,In),_63843,_63856), subset(res(R,E,Com),_63856,_63869), subset(vSource(VS,B,Com),_63869,_63844). /* activeLoad(al2(D,Q1,Q2),Ref,Vp,Ld) --> dtr(D,Vp,B), [pnpTr(Q1,B,Vp,Ref)], [pnpTr(Q2,Ref,B,Ld)]. */ subset(activeLoad(al2(D,Q1,Q2),Ref,Vp,Ld),_69052,_69053) :- subset(dtr(D,Vp,B),_69052,_69065), member_rest(pnpTr(Q1,B,Vp,Ref),_69065,_69078), member_rest(pnpTr(Q2,Ref,B,Ld),_69078,_69053). /* sDiffAmp(sdAmp2(EC,R,CS),B1,B2,C1,Vp,Vm) --> eCoupledPair(EC,B1,B2,E,C1,Vp), res(R,Vp,C1), cSink(CS,E,Vm). */ subset(sDiffAmp(sdAmp2(EC,R,CS),B1,B2,C1,Vp,Vm),_74556,_74557) :- subset(eCoupledPair(EC,B1,B2,E,C1,Vp),_74556,_74569), subset(res(R,Vp,C1),_74569,_74582), subset(cSink(CS,E,Vm),_74582,_74557). /* commonEmitter(pnpCE2(Q,R),In,Ot,Vp,Vm) --> [pnpTr(Q,In,Vp,Ot)], res(R,Ot,Vm). */ subset(commonEmitter(pnpCE2(Q,R),In,Ot,Vp,Vm),_79077,_79078) :- member_rest(pnpTr(Q,In,Vp,Ot),_79077,_79090), subset(res(R,Ot,Vm),_79090,_79078). /* levelshiftEF(lsEF(Q,LS,CS),In,Ot,Vp,Vm) --> [npnTr(Q,In,E,Vp)], seriesRD(LS,E,Ot), cSink(CS,Ot,Vm). */ subset(levelshiftEF(lsEF(Q,LS,CS),In,Ot,Vp,Vm),_83906,_83907) :- member_rest(npnTr(Q,In,E,Vp),_83906,_83919), subset(seriesRD(LS,E,Ot),_83919,_83932), subset(cSink(CS,Ot,Vm),_83932,_83907). /* dBalanceDA(dbda(AL,Ec1,Ec2,Ec,CS),B1,B2,D1,D2,C2,Vp,Vm) --> activeLoad(AL,C1,Vp,C2), eCoupledPair(Ec1,D1,D2,E1,C1,C2), eCoupledPair(Ec2,D2,D1,E2,C1,C2), eCoupledPair(Ec,B1,B2,E,E1,E2), cSink(CS,E,Vm). */ subset(dBalanceDA(dbda(AL,Ec1,Ec2,Ec,CS),B1,B2,D1,D2,C2,Vp,Vm),_92275,_92276) :- subset(activeLoad(AL,C1,Vp,C2),_92275,_92288), subset(eCoupledPair(Ec1,D1,D2,E1,C1,C2),_92288,_92301), subset(eCoupledPair(Ec2,D2,D1,E2,C1,C2),_92301,_92314), subset(eCoupledPair(Ec,B1,B2,E,E1,E2),_92314,_92327), subset(cSink(CS,E,Vm),_92327,_92276). /* multiBiasVsource(mvbs(R1,E2,R3,Q1,Q2),Vp,V1,V2,V3,V4,Vm) --> [npnTr(Q1,V3,V4,Vp)], [npnTr(Q2,V4,Vm,V3)], res(R3,V2,V3), res(R2,V1,V2), res(R1,Vp,V1). */ subset(multiBiasVsource(mvbs(R1,E2,R3,Q1,Q2),Vp,V1,V2,V3,V4,Vm),_4395,_4396) :- member_rest(npnTr(Q1,V3,V4,Vp),_4395,_4408), member_rest(npnTr(Q2,V4,Vm,V3),_4408,_4421), subset(res(R3,V2,V3),_4421,_4434), subset(res(R2,V1,V2),_4434,_4447), subset(res(R1,Vp,V1),_4447,_4396). /* vSource(VS,V,Com) --> mvSource(VS,V,Com). */ subset(vSource(VS,V,Com),_8169,_8170) :- subset(mvSource(VS,V,Com),_8169,_8170). /* vSource(VS,V,Com) --> test(mvSource(VS,V,Com)). */ subset(vSource(VS,V,Com),_10321,_10321) :- subset(mvSource(VS,V,Com),_10321,_10333). /* mvSource(mbv1(MB),V,Com) --> multiBiasVsource(MB,_11477,V,_11609,_11679,_11749,Com). */ subset(mvSource(mbv1(MB),V,Com),_12977,_12978) :- subset(multiBiasVsource(MB,_11477,V,_11609,_11679,_11749,Com),_12977,_12978). /* mvSource(mbv2(MB),V,Com) --> multiBiasVsource(MB,_14281,_14351,V,_14483,_14553,Com). */ subset(mvSource(mbv2(MB),V,Com),_15781,_15782) :- subset(multiBiasVsource(MB,_14281,_14351,V,_14483,_14553,Com),_15781,_15782). /* mvSource(mbv3(MB),V,Com) --> multiBiasVsource(MB,_17085,_17155,_17225,V,_17357,Com). */ subset(mvSource(mbv3(MB),V,Com),_18585,_18586) :- subset(multiBiasVsource(MB,_17085,_17155,_17225,V,_17357,Com),_18585,_18586). /* mvSource(mbv4(MB),V,Com) --> multiBiasVsource(MB,_19889,_19959,_20029,_20099,V,Com). */ subset(mvSource(mbv4(MB),V,Com),_21389,_21390) :- subset(multiBiasVsource(MB,_19889,_19959,_20029,_20099,V,Com),_21389,_21390). /* phaseDetector(pdet(DA,R1,R2,VS1,VS2,RL,R3,R4),In1,In2,Ot,Vp,Vm) --> dBalanceDA(DA,In1,B2,BB1,In2,Ot,Vp,Vm), res(R1,In1,V2), res(R2,B2,V2), vSource(VS1,BB1,Vm), vSource(VS2,V2,Vm), res(RL,Ot,V3), res(R3,Vp,V3), res(R4,V3,Vm). */ subset(phaseDetector(pdet(DA,R1,R2,VS1,VS2,RL,R3,R4),In1,In2,Ot,Vp,Vm),_30381,_30382) :- subset(dBalanceDA(DA,In1,B2,BB1,In2,Ot,Vp,Vm),_30381,_30394), subset(res(R1,In1,V2),_30394,_30407), subset(res(R2,B2,V2),_30407,_30420), subset(vSource(VS1,BB1,Vm),_30420,_30433), subset(vSource(VS2,V2,Vm),_30433,_30446), subset(res(RL,Ot,V3),_30446,_30459), subset(res(R3,Vp,V3),_30459,_30472), subset(res(R4,V3,Vm),_30472,_30382). /* voltageCurrentConverter(vcc(VV,Q,R),In,Sink,Vp,Vm) --> vvConverter(VV,In,B,Vp,Vm), [npnTr(Q,B,E,Sink)], res(R,E,Vm). */ subset(voltageCurrentConverter(vcc(VV,Q,R),In,Sink,Vp,Vm),_37926,_37927) :- subset(vvConverter(VV,In,B,Vp,Vm),_37926,_37939), member_rest(npnTr(Q,B,E,Sink),_37939,_37952), subset(res(R,E,Vm),_37952,_37927). /* vvConverter(vv(D1,D2,Q1,Q2,Q3,Q4,R1,R2,R3),In,Ot,Vp,Vm) --> dtr(D1,In,B), dtr(D2,B,In), [pnpTr(Q1,B,E,C)], [npnTr(Q2,C,Ot,A)], [npnTr(Q3,B,A,Vp)], [npnTr(Q4,Ot,D,E)], res(R1,Vp,E), res(R2,E,Vm), res(R3,Ot,Vm), res(R4,D,Vm). */ subset(vvConverter(vv(D1,D2,Q1,Q2,Q3,Q4,R1,R2,R3),In,Ot,Vp,Vm),_49385,_49386) :- subset(dtr(D1,In,B),_49385,_49398), subset(dtr(D2,B,In),_49398,_49411), member_rest(pnpTr(Q1,B,E,C),_49411,_49424), member_rest(npnTr(Q2,C,Ot,A),_49424,_49437), member_rest(npnTr(Q3,B,A,Vp),_49437,_49450), member_rest(npnTr(Q4,Ot,D,E),_49450,_49463), subset(res(R1,Vp,E),_49463,_49476), subset(res(R2,E,Vm),_49476,_49489), subset(res(R3,Ot,Vm),_49489,_49502), subset(res(R4,D,Vm),_49502,_49386). /* vctrlChargeDischarge(vccd(VC,EC,AL,C,VS),I1,I2,Ot,Vp,Vm) --> voltageCurrentConverter(VC,I1,E,Vp,Vm), eCoupledPair(EC,I2,B2,E,C1,Ot), activeLoad(AL,C1,Vp,Ot), cap(C,Ot,Vm), vSource(VS,B2,Vm). */ subset(vctrlChargeDischarge(vccd(VC,EC,AL,C,VS),I1,I2,Ot,Vp,Vm),_59570,_59571) :- subset(voltageCurrentConverter(VC,I1,E,Vp,Vm),_59570,_59583), subset(eCoupledPair(EC,I2,B2,E,C1,Ot),_59583,_59596), subset(activeLoad(AL,C1,Vp,Ot),_59596,_59609), subset(cap(C,Ot,Vm),_59609,_59622), subset(vSource(VS,B2,Vm),_59622,_59571). /* schmitTrig(strig(EF,DA,CE,Q,R1,R2,R3),In,Ot,Vp,Vm) --> sDiffAmp(DA,B1,Ot,C1,Vp,Vm), levelshiftEF(EF,In,B1,Vp,Vm), commonEmitter(CE,C1,C2,Vp,Vm), [npnTr(Q,C2,Vm,C3)], res(R1,C3,Vm), res(R2,Ot,C3), res(R3,Vp,Ot). */ subset(schmitTrig(strig(EF,DA,CE,Q,R1,R2,R3),In,Ot,Vp,Vm),_69888,_69889) :- subset(sDiffAmp(DA,B1,Ot,C1,Vp,Vm),_69888,_69901), subset(levelshiftEF(EF,In,B1,Vp,Vm),_69901,_69914), subset(commonEmitter(CE,C1,C2,Vp,Vm),_69914,_69927), member_rest(npnTr(Q,C2,Vm,C3),_69927,_69940), subset(res(R1,C3,Vm),_69940,_69953), subset(res(R2,Ot,C3),_69953,_69966), subset(res(R3,Vp,Ot),_69966,_69889). /* voltageControledOsc(vco(CD,TRIG),In,Ot,Vp,Vm) --> vctrlChargeDischarge(CD,In,Ot,O1,Vp,Vm), schmitTrig(TRIG,O1,Ot,Vp,Vm). */ subset(voltageControledOsc(vco(CD,TRIG),In,Ot,Vp,Vm),_76495,_76496) :- subset(vctrlChargeDischarge(CD,In,Ot,O1,Vp,Vm),_76495,_76508), subset(schmitTrig(TRIG,O1,Ot,Vp,Vm),_76508,_76496). /* phaseLockedLoop(pll(PD,LPF,VCO),In,Ot,Vp,Vm) --> phaseDetector(PD,In,Ot,O1,Vp,Vm), lowpassFilter(LPF,O1,Vm), voltageControledOsc(VCO,O1,Ot,Vp,Vm), [terminal(T1,In)], [terminal(T2,Ot)], [terminal(T3,Vp)], [terminal(T4,Vm)]. */ subset(phaseLockedLoop(pll(PD,LPF,VCO),In,Ot,Vp,Vm),_84438,_84439) :- subset(phaseDetector(PD,In,Ot,O1,Vp,Vm),_84438,_84451), subset(lowpassFilter(LPF,O1,Vm),_84451,_84464), subset(voltageControledOsc(VCO,O1,Ot,Vp,Vm),_84464,_84477), member_rest(terminal(T1,In),_84477,_84490), member_rest(terminal(T2,Ot),_84490,_84503), member_rest(terminal(T3,Vp),_84503,_84516), member_rest(terminal(T4,Vm),_84516,_84439). /* seriesRD(X,A,C) --> resDtr(X,A,C). */ subset(seriesRD(X,A,C),_88658,_88659) :- subset(resDtr(X,A,C),_88658,_88659). /* seriesRD(srd(X,Y),A,C) --> resDtr(X,A,B), seriesRD(Y,B,C). */ subset(seriesRD(srd(X,Y),A,C),_91614,_91615) :- subset(resDtr(X,A,B),_91614,_91627), subset(seriesRD(Y,B,C),_91627,_91615). /* resDtr(X,A,C) --> res(X,A,C). */ subset(resDtr(X,A,C),_94026,_94027) :- subset(res(X,A,C),_94026,_94027). /* resDtr(X,A,C) --> dtr(X,A,C). */ subset(resDtr(X,A,C),_96028,_96029) :- subset(dtr(X,A,C),_96028,_96029). % member_rest(Element, Set, ReducedSet) <- member_rest(M,[M|X],X). member_rest(M,[A|X],[A|Y]) :- member_rest(M,X,Y).