Changes

→‎Note 1: convert graphics
Line 9: Line 9:  
:* DATA.  http://forum.wolframscience.com/showthread.php?threadid=228
 
:* DATA.  http://forum.wolframscience.com/showthread.php?threadid=228
   −
One of the first things that you can do, once you have a moderately functional calculus for boolean functions or propositional logic, whatever you choose to call it, is to start thinking about, and even start computing, the differentials of these functions or propositions.
+
One of the first things that you can do, once you have a moderately efficient calculus for boolean functions or propositional logic, whatever you choose to call it, is to start thinking about, and even start computing, the differentials of these functions or propositions.
    
Let us start with a proposition of the form <math>p ~\operatorname{and}~ q</math> that is graphed as two labels attached to a root node:
 
Let us start with a proposition of the form <math>p ~\operatorname{and}~ q</math> that is graphed as two labels attached to a root node:
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph Existential P And Q.jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                      p q                      |
  −
|                       @                        |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|                    p and q                    |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
   −
Written as a string, this is just the concatenation "<math>p~q</math>".
+
Written as a string, this is just the concatenation <math>p~q</math>.
    
The proposition <math>pq\!</math> may be taken as a boolean function <math>f(p, q)\!</math> having the abstract type <math>f : \mathbb{B} \times \mathbb{B} \to \mathbb{B},</math> where <math>\mathbb{B} = \{ 0, 1 \}</math> is read in such a way that <math>0\!</math> means <math>\operatorname{false}</math> and <math>1\!</math> means <math>\operatorname{true}.</math>
 
The proposition <math>pq\!</math> may be taken as a boolean function <math>f(p, q)\!</math> having the abstract type <math>f : \mathbb{B} \times \mathbb{B} \to \mathbb{B},</math> where <math>\mathbb{B} = \{ 0, 1 \}</math> is read in such a way that <math>0\!</math> means <math>\operatorname{false}</math> and <math>1\!</math> means <math>\operatorname{true}.</math>
Line 33: Line 23:  
In this style of graphical representation, the value <math>\operatorname{true}</math> looks like a blank label and the value <math>\operatorname{false}</math> looks like an edge.
 
In this style of graphical representation, the value <math>\operatorname{true}</math> looks like a blank label and the value <math>\operatorname{false}</math> looks like an edge.
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph Existential True.jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                                                |
  −
|                       @                        |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|                      true                      |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph Existential False.jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                        o                        |
  −
|                        |                        |
  −
|                       @                        |
  −
|                                                 |
  −
o-------------------------------------------------o
  −
|                      false                      |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
   −
Back to the proposition <math>pq.\!</math>  Imagine yourself standing in a fixed cell of the corresponding venn diagram, say, the cell where the proposition <math>pq\!</math> is true, as shown here:
+
Back to the proposition <math>pq.\!</math>  Imagine yourself standing in a fixed cell the corresponding venn diagram, say, the cell where the proposition <math>pq\!</math> is true, as shown in the following Figure:
   −
{| align="center" cellpadding="10"
+
{| align="center" cellspacing="10"
 
| [[Image:Venn Diagram P And Q.jpg|500px]]
 
| [[Image:Venn Diagram P And Q.jpg|500px]]
 
|}
 
|}
Line 72: Line 41:  
Don't think about it &mdash; just compute:
 
Don't think about it &mdash; just compute:
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph (P,dP)(Q,dQ).jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                  dp o  o dq                  |
  −
|                    / \ / \                    |
  −
|                  p o---@---o q                  |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|                (p, dp) (q, dq)                 |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
   −
To make future graphs easier to draw in ASCII, I will use devices like '''<code>@=@=@</code>''' and '''<code>o=o=o</code>''' to identify several nodes into one, as in this next redrawing:
+
The cactus formula <math>\texttt{(p, dp)(q, dq)}</math> and its corresponding graph arise by substituting <math>p + \operatorname{d}p</math> for <math>p\!</math> and <math>q + \operatorname{d}q</math> for <math>q\!</math> in the boolean product or logical conjunction <math>pq\!</math> and writing the result in the two dialects of cactus syntax.  This follows from the fact that the boolean sum <math>p + \operatorname{d}p</math> is equivalent to the logical operation of exclusive disjunction, which parses to a cactus graph of the following form:
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph (P,dP).jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                 |
  −
|                  p  dp q  dq                  |
  −
|                  o---o o---o                  |
  −
|                    \  | |  /                    |
  −
|                    \ | | /                    |
  −
|                      \| |/                      |
  −
|                      @=@                      |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|                (p, dp) (q, dq)                |
  −
o-------------------------------------------------o
  −
</pre>
  −
|}
  −
 
  −
However you draw it, these expressions follow because the expression <math>p + \operatorname{d}p,</math> where the plus sign indicates addition in <math>\mathbb{B},</math> that is, addition modulo 2, and thus corresponds to the exclusive disjunction operation in logic, parses to a graph of the following form:
  −
 
  −
{| align="center" cellpadding="6" width="90%"
  −
| align="center" |
  −
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                    p    dp                    |
  −
|                      o---o                      |
  −
|                      \ /                      |
  −
|                        @                        |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|                    (p, dp)                     |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
    
Next question:  What is the difference between the value of the
 
Next question:  What is the difference between the value of the
proposition <math>pq\!</math> "over there" and the value of the proposition <math>pq\!</math> where you are, all expressed in the form of
+
proposition <math>pq\!</math> over there, at a distance of <math>\operatorname{d}p</math> and <math>\operatorname{d}q,</math> and the value of the proposition <math>pq\!</math> where you are standing, all expressed in the form of a general formula, of course?  Here is the appropriate formulation:
a general formula, of course?  Here is the appropriate formulation:
     −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph ((P,dP)(Q,dQ),PQ).jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|            p  dp q  dq                        |
  −
|            o---o o---o                        |
  −
|              \  | |  /                          |
  −
|              \ | | /                          |
  −
|                \| |/        p q                |
  −
|                 o=o-----------o                |
  −
|                  \          /                  |
  −
|                  \        /                  |
  −
|                    \      /                    |
  −
|                    \    /                    |
  −
|                      \  /                      |
  −
|                      \ /                      |
  −
|                        @                        |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|              ((p, dp)(q, dq), p q)             |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
   Line 158: Line 62:  
Last question, for now:  What is the value of this expression from your current standpoint, that is, evaluated at the point where <math>pq\!</math> is true?  Well, substituting <math>1\!</math> for <math>p\!</math> and <math>1\!</math> for <math>q\!</math> in the graph amounts to erasing the labels <math>p\!</math> and <math>q\!,</math> as shown here:
 
Last question, for now:  What is the value of this expression from your current standpoint, that is, evaluated at the point where <math>pq\!</math> is true?  Well, substituting <math>1\!</math> for <math>p\!</math> and <math>1\!</math> for <math>q\!</math> in the graph amounts to erasing the labels <math>p\!</math> and <math>q\!,</math> as shown here:
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph (( ,dP)( ,dQ), ).jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                dp    dq                        |
  −
|            o---o o---o                        |
  −
|              \  | |  /                          |
  −
|              \ | | /                          |
  −
|                \| |/                            |
  −
|                 o=o-----------o                |
  −
|                  \          /                  |
  −
|                  \        /                  |
  −
|                    \      /                    |
  −
|                    \    /                    |
  −
|                      \  /                      |
  −
|                      \ /                      |
  −
|                        @                        |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|              (( , dp)( , dq),   )             |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
    
And this is equivalent to the following graph:
 
And this is equivalent to the following graph:
   −
{| align="center" cellpadding="6" width="90%"
+
{| align="center" cellspacing="10"
| align="center" |
+
| [[Image:Cactus Graph ((dP)(dQ)).jpg|500px]]
<pre>
  −
o-------------------------------------------------o
  −
|                                                |
  −
|                    dp  dq                    |
  −
|                     o  o                      |
  −
|                      \ /                      |
  −
|                        o                        |
  −
|                        |                        |
  −
|                        @                        |
  −
|                                                |
  −
o-------------------------------------------------o
  −
|                  ((dp) (dq))                   |
  −
o-------------------------------------------------o
  −
</pre>
   
|}
 
|}
  
12,080

edits