#include <string.h>

int main() {
  char *a = "a", *b = "b";
  int i;

  /* base cases */
  printf("Normally:\n%d\n", strcmp(a, b) != 0);
  printf("%d\n", strcmp(b, a) != 0);
  printf("%d\n\n", strcmp(a, a) != 0);

  /* bit flip */
  printf("Bit flipped:\n%d\n", ~strcmp(a, b) != 0);
  printf("%d\n", ~strcmp(b, a) != 0);
  printf("%d\n\n", ~strcmp(a, a) != 0);

  /* gte zero */
  printf("Bit flip disambiguated:\n%d\n", strcmp(a, b) >= 0);
  printf("%d\n", strcmp(b, a) >= 0);
  printf("%d\n", strcmp(a, a) >= 0);
  
  return 0;
}