module WhenEx title 'WHEN Statement Examples' " Input pins A, B, C, D, E, F pin; " Output pins X1, X1A, X2, X2A, X3, X3A, X4 pin istype 'com'; X5, X6, X7, X8, X9, X10 pin istype 'com'; equations WHEN (!A # B) THEN X1 = C & !D; X1A = (!A # B) & (C & !D); WHEN (A & B) THEN X2 = C # D; ELSE X2 = E # F; X2A = (A & B) & (C # D) # !(A & B) & (E # F); WHEN (A) THEN X3 = D; ELSE WHEN (B) THEN X3 = E; ELSE WHEN (C) THEN X3 = F; X3A = (A) & (D) # !(A) & (B) & (E) # !(A) & !(B) & (C) & (F); WHEN (A) THEN {WHEN (B) THEN X4 = D;} ELSE X4 = E; WHEN (A & B) THEN X5 = D; ELSE WHEN (A # !C) THEN X6 = E; ELSE WHEN (B # C) THEN X7 = F; WHEN (A) THEN { X8 = D & E & F; WHEN (B) THEN X8 = 1; ELSE {X9 = D; X10 = E;} } ELSE { X8 = !D # !E; WHEN (D) THEN X9 = 1; {X10 = C & D;} } end WhenEx