The Greeks
Reply
Today I realised that ‘and’ == ‘minimum’ and ‘or’ == ‘maximum’. Mind blown! :)
And here is some PHP code to go with my new found knowledge:
test( 0, 0 );
test( 0, 1 );
test( 1, 0 );
test( 1, 1 );
function test( $x, $y ) {
if ( and_1( $x, $y ) !== and_2( $x, $y ) ) { echo "Error.\n"; }
if ( or_1( $x, $y ) !== or_2( $x, $y ) ) { echo "Error.\n"; }
}
function and_1( $x, $y ) {
return (bool)min( $x, $y );
}
function and_2( $x, $y ) {
return ! ( ! $x || ! $y );
}
function or_1( $x, $y ) {
return (bool)max( $x, $y );
}
function or_2( $x, $y ) {
return ! ( ! $x && ! $y );
}