Truth tables for Semantic Boolean operators:
not :
| X | not X | 
|  tt    |  ff   | 
|  ff  |   tt    | 
and :
| X | Y  | X and Y  | 
|  tt    | tt   |  tt   | 
| tt  | ff |    ff      | 
|  ff    | tt |    ff      | 
|  ff    | ff |    ff      | 
or :
| X | Y  | X or Y  | 
|  tt    | tt   |  tt   | 
| tt  | ff |   tt     | 
|  ff    | tt |   tt     | 
|  ff    | ff |   ff     | 
if :
| X | Y  | X if Y  | 
|  tt    | tt   |  tt   | 
| tt  | ff |   ff     | 
|  ff    | tt |   tt    | 
|  ff    | ff |   tt    | 
iff :
| X | Y  | X iff Y  | 
|  tt    | tt   |  tt   | 
| tt  | ff |   ff     | 
|  ff    | tt |   ff     | 
|  ff    | ff |   tt     |