Loading [MathJax]/extensions/TeX/HTML.js

Saturday, March 2, 2013

Draft

Version of 2018-12-05 or later

Draft Outline

The basic building block for Boolean geometry and logic
is the Boolean “object of truth values”: \bftwo = \{\ladjbot,\radjtop\} = \{\text{false},\text{true}\}.
We give this set the (linear) order \ladjbot\lt\radjtop, in accordance with the ex falso sequitur quodlibet principle of logic.

Boolean geometry then considers powers of \bftwo:
the Boolean point \bftwo^0 \cong 1 ,
the Boolean line \bftwo^1 \cong \bftwo ,
the Boolean plane \bftwo^2 \cong \bftwo\times\bftwo ,
the Boolean cube \bftwo^3\cong \bftwo\times\bftwo\times\bftwo , and so on.

The next step is to consider Boolean (i.e., \bftwo-valued) functions (which we will call predicates) defined on these geometric objects.
Since (the Boolean object of truth values, \bftwo) is (the subobject classifier) for (the category of sets),
such predicates are in bijection with
the subsets of (the source (domain) of the predicate).


A comparison of the traditional way of presenting truth tables to
the geometrical way (the graph of the function from \bftwo\times\bftwo to \bftwo determined by the truth table):
Truth table for \objA\wedge\objB
\objA \objB \objA\wedge\objB
\radjtop \radjtop \radjtop
\ladjbot \radjtop \ladjbot
\radjtop \ladjbot \ladjbot
\ladjbot \ladjbot \ladjbot
The graph of the function \wedge : \bftwo\times\bftwo \rightarrow \bftwo
\objB
\radjtop \ladjbot \Rule{64px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \objA\wedge\objB \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{64px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop

\objB\in\{\ladjbot,\radjtop\}
\vary\in\{0,1\}
\Big\uparrow \objB
1 \top \begin{array}{c}\langle \ladjbot, \radjtop \rangle\\\objB - \objA\\\end{array} \Rule{64px}{2px}{0px} \begin{array}{c}\langle \radjtop, \radjtop \rangle\\\objA\cap\objB\\\end{array}
\neg\objA \Rule{2px}{32px}{32px} \Rule{2px}{32px}{32px} \objA
0 \bot \begin{array}{c}\langle \ladjbot, \ladjbot \rangle\\\end{array} \Rule{64px}{2px}{0px} \begin{array}{c}\langle \radjtop, \ladjbot \rangle\\\objA - \objB\\\end{array} \longrightarrow \objA\in\{\ladjbot,\radjtop\}, \varx\in\{0,1\}
\bot \neg\objB \top
0 1

{2\times2 \choose 4} = 1 all
\objB
\radjtop \radjtop \Rule{64px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\radjtop\\1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{64px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
{2\times2 \choose 3} = 4 ells
angles
\objB
\radjtop \radjtop \Rule{128px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA\vee\objB\\(\varx+1)(\vary+1)+1\\\varx\vary+\varx+\vary\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{128px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
\objB
\radjtop \radjtop \Rule{96px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\neg\objA\vee\objB\\\objA\Rightarrow\objB\\\neg(\objA\wedge\neg\objB)\\\varx(\vary+1)+1\\\varx\vary+\varx+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{96px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
\objB
\radjtop \ladjbot \Rule{96px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA\vee\neg\objB\\\objA\Leftarrow\objB\\\neg(\neg\objA\wedge\objB)\\(\varx+1)\vary+1\\\varx\vary+\vary+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{96px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
\objB
\radjtop \radjtop \Rule{128px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\neg\objA\vee\neg\objB\\\neg(\objA\wedge\objB)\\\varx\vary+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{128px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
{2\times2 \choose 2} = 6 lines
\objB
\radjtop \ladjbot \Rule{64px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA\\\varx\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{64px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
\objB
\radjtop \radjtop \Rule{128px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objB\\\vary\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{128px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
\objB
\radjtop \ladjbot \Rule{96px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA\Leftrightarrow\objB\\\varx+\vary+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{96px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
\objB
\radjtop \radjtop \Rule{96px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA \veebar\objB\\\varx+\vary\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{96px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
\objB
\radjtop \ladjbot \Rule{128px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\neg\objB\\\vary+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{128px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
\objB
\radjtop \radjtop \Rule{64px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\neg\objA\\\varx+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{64px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
{2\times2 \choose 1} = 4 points
vertices
\objB
\radjtop \ladjbot \Rule{128px}{2px}{0px} \radjtop
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA\wedge\objB\\\varx\vary\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{128px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
\objB
\radjtop \radjtop \Rule{96px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\neg\objA\wedge\objB\\(\varx+1)\vary\\\varx\vary+\vary\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{96px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
\objB
\radjtop \ladjbot \Rule{96px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\objA\wedge\neg\objB\\\varx(\vary+1)\\\varx\vary+\varx\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{96px}{2px}{0px} \radjtop
\ladjbot \neg\objB \radjtop
\objB
\radjtop \ladjbot \Rule{128px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\neg\objA\wedge\neg\objB\\(\varx+1)(\vary+1)\\\varx\vary+\varx+\vary+1\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \radjtop \Rule{128px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop
{2\times2 \choose 0} = 1 none
\objB
\radjtop \ladjbot \Rule{64px}{2px}{0px} \ladjbot
\neg\objA \Rule{2px}{32px}{32px} \begin{array}{c}\ladjbot\\0\end{array} \Rule{2px}{32px}{32px} \objA
\ladjbot \ladjbot \Rule{64px}{2px}{0px} \ladjbot
\ladjbot \neg\objB \radjtop

\begin{array}{} &&& dot & \unicode{0x2500} & dot \\ && \unicode{0x2571} && \unicode{0x2571} \\ & dot & \unicode{0x2500} & dot \\ \\ && dot & \unicode{0x2500} & dot \\ & \unicode{0x2571} && \unicode{0x2571} \\ dot & \unicode{0x2500} & dot \\ \end{array}

No comments:

Post a Comment

MathJax 2.7.9