Difference between revisions of "Talk:Logical graph"

MyWikiBiz, Author Your Legacy — Tuesday November 26, 2024
Jump to navigationJump to search
(→‎Solution: del empty line)
Line 13: Line 13:
 
===Problem===
 
===Problem===
  
* [http://mathforum.org/kb/message.jspa?messageID=6513648 Problem posted by Mike1234 on the Discrete Math List at the Math Forum].
+
[http://mathforum.org/kb/message.jspa?messageID=6513648 Problem posted by Mike1234 on the Discrete Math List at the Math Forum].
  
 
===Solution===
 
===Solution===
Line 75: Line 75:
  
 
===Discussion===
 
===Discussion===
 
<pre>
 
o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o
 
  
 
Back to the initial problem:
 
Back to the initial problem:
  
* Show that ~(p <=> q) is equivalent to (~q) <=> p
+
* Show that ~(p <=> q) is equivalent to (~q) <=> p.
  
We can translate this into logical graphs by supposing that we
+
We can translate this into logical graphs by supposing that we have to express everything in terms of negation and conjunction, using parentheses for negation &mdash; that is, "(x)" for "not x" &mdash; and simple concatenation for conjunction &mdash; "xyz" or "x y z" for "x and y and z".
have to express everything in terms of negation and conjunction,
 
using parentheses for negation -- that is, "(x)" for "not x" --
 
and simple concatenation for conjunction -- "xyz" or "x y z"
 
for "x and y and z".
 
  
In this form of representation, for historical reasons called
+
In this form of representation, for historical reasons called the "existential interpretation" of logical graphs, we have the following expressions for basic logical operations:
the "existential interpretation" of logical graphs, we have
 
the following expressions for basic logical operations:
 
  
 
The disjunction "x or y" is written "((x)(y))".
 
The disjunction "x or y" is written "((x)(y))".
Line 97: Line 88:
 
This corresponds to the logical graph:
 
This corresponds to the logical graph:
  
 +
<pre>
 
         x  y
 
         x  y
 
         o  o
 
         o  o
Line 103: Line 95:
 
           |
 
           |
 
           O
 
           O
 +
</pre>
  
 
The disjunction "x or y or z" is written "((x)(y)(z))".
 
The disjunction "x or y or z" is written "((x)(y)(z))".
Line 108: Line 101:
 
This corresponds to the logical graph:
 
This corresponds to the logical graph:
  
 +
<pre>
 
         x y z
 
         x y z
 
         o o o
 
         o o o
Line 114: Line 108:
 
           |
 
           |
 
           O
 
           O
 +
</pre>
  
 
Etc.
 
Etc.
  
The implication "x => y" is written "(x (y)),
+
The implication "x => y" is written "(x (y)), which can be read "not x without y" if that helps to remember the form of expression.
which can be read "not x without y" if that
 
helps to remember the form of expression.
 
  
 
This corresponds to the logical graph:
 
This corresponds to the logical graph:
  
 +
<pre>
 
         y o
 
         y o
 
           |
 
           |
Line 128: Line 122:
 
           |
 
           |
 
           O
 
           O
 +
</pre>
  
Thus, the equivalence "x <=> y" has to be written somewhat
+
Thus, the equivalence "x <=> y" has to be written somewhat inefficiently as a conjunction of to and fro implications: "(x (y))(y (x))".
inefficiently as a conjunction of to and fro implications:
 
"(x (y))(y (x))".
 
  
 
This corresponds to the logical graph:
 
This corresponds to the logical graph:
  
 +
<pre>
 
       y o  o x
 
       y o  o x
 
         |  |
 
         |  |
Line 140: Line 134:
 
         \ /
 
         \ /
 
           O
 
           O
 +
</pre>
  
Putting all the pieces together, the problem given
+
Putting all the pieces together, the problem given amounts to proving the following equation, expressed in the forms of logical graphs and parenthetical parse strings, respectively:
amounts to proving the following equation, expressed
 
in parse string and logical graph forms, respectively:
 
  
* Show that ~(p <=> q) is equivalent to (~q) <=> p
+
* Show that ~(p <=> q) is equivalent to (~q) <=> p.
  
 +
<pre>
 
       q o  o p          q o
 
       q o  o p          q o
 
         |  |              |
 
         |  |              |
Line 156: Line 150:
  
 
( (p (q)) (q (p)) ) = (p ( (q) )) ((p)(q))
 
( (p (q)) (q (p)) ) = (p ( (q) )) ((p)(q))
 +
</pre>
  
No kidding ...
+
No kidding &hellip;
 
 
o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o~~~~~~~~~o
 
</pre>
 

Revision as of 22:29, 2 December 2008

Notes & Queries

Place for Discussion


\(\ldots\)

Logical Equivalence Problem

Problem

Problem posted by Mike1234 on the Discrete Math List at the Math Forum.

Solution

Solution posted by Jon Awbrey, working in the medium of logical graphs.

Required to show: ~(p <=> q) is equivalent to (~q) <=> p.

In logical graphs, the required equivalence looks like this:

      q o   o p           q o
        |   |               |
      p o   o q             o   o p
         \ /                |   |
          o               p o   o--o q
          |                  \ / 
          @         =         @

We have a theorem that says:

        y o                xy o
          |                   |
        x @        =        x @

See Logical Graph : C2. Generation Theorem.

Applying this twice to the left hand side of the required equation, we get:

      q o   o p          pq o   o pq
        |   |               |   |
      p o   o q           p o   o q
         \ /                 \ /
          o                   o
          |                   |
          @         =         @

By collection, the reverse of distribution, we get:

          p   q
          o   o
       pq  \ / 
        o   o
         \ /
          @

But this is the same result that we get from one application of double negation to the right hand side of the required equation.

QED

Jon Awbrey

PS. I will copy this to the Inquiry List, since I know it preserves the trees.

Discussion

Back to the initial problem:

  • Show that ~(p <=> q) is equivalent to (~q) <=> p.

We can translate this into logical graphs by supposing that we have to express everything in terms of negation and conjunction, using parentheses for negation — that is, "(x)" for "not x" — and simple concatenation for conjunction — "xyz" or "x y z" for "x and y and z".

In this form of representation, for historical reasons called the "existential interpretation" of logical graphs, we have the following expressions for basic logical operations:

The disjunction "x or y" is written "((x)(y))".

This corresponds to the logical graph:

        x   y
        o   o
         \ /
          o
          |
          O

The disjunction "x or y or z" is written "((x)(y)(z))".

This corresponds to the logical graph:

        x y z
        o o o
         \|/
          o
          |
          O

Etc.

The implication "x => y" is written "(x (y)), which can be read "not x without y" if that helps to remember the form of expression.

This corresponds to the logical graph:

        y o
          |
        x o
          |
          O

Thus, the equivalence "x <=> y" has to be written somewhat inefficiently as a conjunction of to and fro implications: "(x (y))(y (x))".

This corresponds to the logical graph:

      y o   o x
        |   |
      x o   o y
         \ /
          O

Putting all the pieces together, the problem given amounts to proving the following equation, expressed in the forms of logical graphs and parenthetical parse strings, respectively:

  • Show that ~(p <=> q) is equivalent to (~q) <=> p.
      q o   o p           q o
        |   |               |
      p o   o q             o   o p
         \ /                |   |
          o               p o   o--o q
          |                  \ /
          O         =         O

( (p (q)) (q (p)) ) = (p ( (q) )) ((p)(q))

No kidding …