Conversion to Canonical Form
(<=> (Signal (Out 1 ?g) On)
(exists ?i (Signal (In ?i ?g) On))))
Eliminate Biconditionals
(=> (Type ?g OR)
(and (=> (Signal (Out 1 ?g) On) (exists ?i (Signal (In ?i ?g) On)))
(=> (exists ?i (Signal (In ?i ?g) On)) (Signal (Out 1 ?g) On))))
Eliminate Implications
(or (not (Type ?g OR))
(and (or (not (Signal (Out 1 ?g) On))
(exists ?i (Signal (In ?i ?g) On)))
(or (not (exists ?i (Signal (In ?i ?g) On)))
(Signal (Out 1 ?g) On))))