void, dein Code gibt meiner Meinung nach nicht das Geruest (keine Ahnung, wie der Fachbegriff ist) des Tetralemmas wieder. Nicht nur, dass er 3-wertig ist (positive Werte, 0, Negative Werte). Und wenn du genauer darueber nachdenkst, koennte man schon eine Zahl NaN definieren, als x / 0.0. Mit den vier Aussageformen ueber eine Gegebenheit mitttels Tetralemma, gegossen in duale Praedikatenlogik geht das nicht.
Just for fun, Ich testete mal deinen Code:
#include <stdio.h>
int main()
{
float f = 0.0 / 0.0;
if ( f == f ); // false, at my machine
else if( f != f ); // true (here, at my ARM machine)
else if(f < 0);
else if(f == 0);
else if(f > 0);
else printf( "NaN\n" );
}