## Truth Function Algebra

Algebra is all about keeping a predicate true while rearranging the variables that define its shape. Identities introduce new or repeats of existing variables, commutativity switches the location of variables, and associativity changes what functions variables are in.

This section will explore these three algebraic concepts as they pertain to generalized truth functions. In order to accommodate this exploration, I also introduce a method for calculating new operators.

### Bit By Bit

#### Bitwise Operator Calculation

$$\big(A,(B,C)_\alpha\big)_\beta=(A,B,C)_\gamma\ \ni\ \gamma=\big[\mathtt{0xAA},[\mathtt{0xCC},\mathtt{0xF0}]_\alpha\big]_\beta$$Algebra is mostly performed in abstraction; variables are never really given value. But eventually, someone will have to put rubber to the road, and reify the algebraic result. In generalized truth functions, that method is the bitwise calculation.

This section derives the method for calculating a truth function's operator from a composition of truth functions, and provides some examples.

### Redundancy At Work

#### Redundant Variables

$$(\textbf{A}^n,X,X)_{\alpha'}=(\textbf{A}^n,X)_\alpha$$There's nothing saying a variable can't repeat in a domain. In fact, repeating a variable can be very useful. In later exercises we'll see precisely how useful these stutters can be, but for now, we'll just look at some basic consequences.

### So, What Do You __Do__ Here?

#### Trivial Truth Functions

$$(\textbf{A}^n,\textbf{B}^m)_\alpha=(\textbf{A}^n)_\beta\ \forall\ (\textbf{A}^n,\textbf{B}^m)_\text{CV}$$
Often we're confronted with superfluous information, some concept that really doesn't matter. This also happens in truth functions. In the notation I use, functions with unnecessary input variables are called __trivial__.

### No, You First

#### Commutativity

$$(\textbf{A}^n,X,\textbf{B}^,Y,\textbf{C}^p)=(\textbf{A}^n,Y,\textbf{B}^,X,\textbf{C}^p)$$Commutativity is the term mobility tool that swaps the position of variables in the cue of an expression. Normally, in algebra, commutativity is restricted to functions that are commute variables without changing the function. However, by allowing the truth function to change commutativity is guaranteed.

### Jesse's Girl

#### Associativity

$$\big(\textbf{B}^m,(X,\textbf{A}^n)_\alpha,Y,\textbf{C}^p\big)_\beta=\big(\textbf{B}^m,X,(\textbf{A}^n,Y)_\gamma,\textbf{C}^p\big)_\delta$$With associativity we can move variables out of one function and into another. Unfortunately, not even allowing truth functions to change will guaranty that associativity will work for a pair of functions.

This section explores the situations where associativity is possible and what truth functions will result.