Optical logic