Example: to evaluate with p true and q false: p=1; q=0; (p&(~(~p|q)))|(p&q) or as: 1&(~(~1|0))|(1&0) White space optional: (p & (~( ~p|q))) |(p & q) Parens optional. & higher precedence than | p&(~(~p|q))|p&q