Info: The word bool comes from George Boole, a mathematician who pioneered Boolean logic in the 1800s in England.
Literals: The true and false literals are hard-coded values. True and false also have the TrueString and FalseString representations.
TrueString, FalseStringInvert: The program's second assignment sets the variable value equal to its opposite value.
Tip: This means that a true value will become a false value. This technique is useful for setting bool preferences.
Also: It is possible, but often not necessary, to define a custom Flip() method to do this.
And: We can store the result of an expression evaluation as a local variable. This technique can simplify complex logic tests.
Here: This program uses the Convert type to convert ints into bools. The Convert.ToBoolean method is perfect for this purpose.
Info: This method considers 0 to be false. All other values, positive and negative, are true.
Initialized: The null value of a nullable bool can be used to mean uninitialized. So we can have a 3-state bool here.
NullableMethods: In C# programs, methods often return bool values. These methods sometimes have the prefix "Is" on their names.
bool: ReturnAlso: Properties can return bool values. The book Code Complete shows how boolean expressions are simplified.
Quote: A CLI Boolean type occupies 1 byte in memory. A bit pattern of all zeros denotes a value of false. A bit pattern with any bit set (analogous to a non-zero integer) denotes a value of true (The CLI Annotated Standard).