GenPass:
PROC [name, ioTypeName:
IO.
ROPE] = {
pla: PLAOps.PLA ← PLAOps.NewPLA[ioTypeName, ioTypeName, name];
desc: REFBit.REFBitDesc = REFBit.Desc[pla.out];
FOR bitIndex:
INT
IN [0..desc.bitForm.size)
DO
REFBit.Set[pla.mask, bitIndex, TRUE];
REFBit.Set[pla.data, bitIndex, TRUE];
REFBit.Set[pla.out, bitIndex, TRUE];
PLAOps.SetOutForBE[pla, PLAOps.GetBEForDataMask[pla]];
REFBit.Set[pla.mask, bitIndex, FALSE];
REFBit.Set[pla.data, bitIndex, FALSE];
REFBit.Set[pla.out, bitIndex, FALSE];
ENDLOOP;
[ ] ← PLAOps.ConvertTermListToCompleteSum[pla.termList, FALSE, FALSE, cmd.out];
[ ] ← PLAOps.FindAMinimalCover[pla.termList, 120, cmd.out];
PLAOps.WritePLAFile[pla, name, cmd.out]};