Difference between revisions of "Talk:Logical graph"

MyWikiBiz, Author Your Legacy — Saturday April 27, 2024
Jump to navigationJump to search
Line 14: Line 14:
  
 
[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].
 +
 +
* Required to show that <math>\lnot (p \Leftrightarrow q)</math> is equivalent to <math>(\lnot q) \Leftrightarrow p.</math>
  
 
===Solution===
 
===Solution===
  
 
[http://mathforum.org/kb/plaintext.jspa?messageID=6514666 Solution posted by Jon Awbrey, working in the medium of logical graphs].
 
[http://mathforum.org/kb/plaintext.jspa?messageID=6514666 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:
 
In logical graphs, the required equivalence looks like this:
Line 78: Line 78:
 
Back to the initial problem:
 
Back to the initial problem:
  
* Show that ~(p <=> q) is equivalent to (~q) <=> p.
+
* Show that <math>\lnot (p \Leftrightarrow q)</math> is equivalent to <math>(\lnot q) \Leftrightarrow p.</math>
  
 
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".
 
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".
Line 138: Line 138:
 
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:
 
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.
+
* Show that <math>\lnot (p \Leftrightarrow q)</math> is equivalent to <math>(\lnot q) \Leftrightarrow p.</math>
  
 
<pre>
 
<pre>

Revision as of 22:38, 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.

  • Required to show that \(\lnot (p \Leftrightarrow q)\) is equivalent to \((\lnot q) \Leftrightarrow p.\)

Solution

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

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 \(\lnot (p \Leftrightarrow q)\) is equivalent to \((\lnot q) \Leftrightarrow 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 \(\lnot (p \Leftrightarrow q)\) is equivalent to \((\lnot q) \Leftrightarrow 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 …