<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE proofs SYSTEM "proof3.dtd">

<?xml-stylesheet type="text/xsl" href="proof3.xsl"?>

<proofs number_of_proofs="1">

<source>WandR.out</source>

<heading><![CDATA[
Prover9 (64) version 2008-09A, September 2008.
Process 7037 was started by veroff on titan,
Sat Oct 25 12:42:08 2008
The command was "prover9 -f WandR.in".
]]></heading>

<proof number="1" length="68" max_count="18">

<comments><![CDATA[
% Proof 1 at 0.03 (+ 0.00) seconds: "WR5".
% Length of proof is 68.
% Level of proof is 21.
% Maximum clause weight is 18.
% Given clauses 64.

]]></comments>

  <clause id="1" type="goal">
    <literal><![CDATA[
      P((x v (y v z)) -> (y v (x v z)))
    ]]></literal>
    <attribute><![CDATA[
      label("WR5")
    ]]></attribute>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <attribute><![CDATA[
      label(goal)
    ]]></attribute>
    <justification jstring="[goal].">
      <j1 rule="goal"/>
    </justification>
  </clause>

  <clause id="2" type="assumption">
    <literal><![CDATA[
      -P(x -> y)
    ]]></literal>
    <literal><![CDATA[
      -P(x)
    ]]></literal>
    <literal><![CDATA[
      P(y)
    ]]></literal>
    <attribute><![CDATA[
      label("MP")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="3" type="assumption">
    <literal><![CDATA[
      P((x -> y) -> (~ x v y))
    ]]></literal>
    <attribute><![CDATA[
      label("-> Def, part a")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="4" type="assumption">
    <literal><![CDATA[
      P((~ x v y) -> (x -> y))
    ]]></literal>
    <attribute><![CDATA[
      label("-> Def, part b")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="5" type="assumption">
    <literal><![CDATA[
      P((x v x) -> x)
    ]]></literal>
    <attribute><![CDATA[
      label("WR1")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="6" type="assumption">
    <literal><![CDATA[
      P(x -> (y v x))
    ]]></literal>
    <attribute><![CDATA[
      label("WR2")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="7" type="assumption">
    <literal><![CDATA[
      P((x v y) -> (y v x))
    ]]></literal>
    <attribute><![CDATA[
      label("WR3")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="8" type="assumption">
    <literal><![CDATA[
      P((x -> y) -> ((z v x) -> (z v y)))
    ]]></literal>
    <attribute><![CDATA[
      label("WR4")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="9" type="deny">
    <literal><![CDATA[
      -P((c1 v (c2 v c3)) -> (c2 v (c1 v c3)))
    ]]></literal>
    <attribute><![CDATA[
      label("WR5")
    ]]></attribute>
    <attribute><![CDATA[
      answer("WR5")
    ]]></attribute>
    <justification jstring="[deny(1)].">
      <j1 rule="deny" parents="1"/>
    </justification>
  </clause>

  <clause id="10">
    <literal><![CDATA[
      P(~ (x -> y) v (~ x v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,3,a,b,3,a)].">
      <j1 rule="hyper" parents="2 3 3"/>
    </justification>
  </clause>

  <clause id="14">
    <literal><![CDATA[
      P(~ x v (y v x))
    ]]></literal>
    <justification jstring="[hyper(2,a,3,a,b,6,a)].">
      <j1 rule="hyper" parents="2 3 6"/>
    </justification>
  </clause>

  <clause id="19">
    <literal><![CDATA[
      P(~ (x v y) v (y v x))
    ]]></literal>
    <justification jstring="[hyper(2,a,3,a,b,7,a)].">
      <j1 rule="hyper" parents="2 3 7"/>
    </justification>
  </clause>

  <clause id="20">
    <literal><![CDATA[
      P((x v (y -> z)) -> (x v ((u v y) -> (u v z))))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,8,a)].">
      <j1 rule="hyper" parents="2 8 8"/>
    </justification>
  </clause>

  <clause id="23">
    <literal><![CDATA[
      P((x v (y v z)) -> (x v (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,7,a)].">
      <j1 rule="hyper" parents="2 8 7"/>
    </justification>
  </clause>

  <clause id="24">
    <literal><![CDATA[
      P((x v y) -> (x v (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,6,a)].">
      <j1 rule="hyper" parents="2 8 6"/>
    </justification>
  </clause>

  <clause id="25">
    <literal><![CDATA[
      P((x v (y v y)) -> (x v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,5,a)].">
      <j1 rule="hyper" parents="2 8 5"/>
    </justification>
  </clause>

  <clause id="26">
    <literal><![CDATA[
      P((x v (~ y v z)) -> (x v (y -> z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,4,a)].">
      <j1 rule="hyper" parents="2 8 4"/>
    </justification>
  </clause>

  <clause id="27">
    <literal><![CDATA[
      P((x v (y -> z)) -> (x v (~ y v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,3,a)].">
      <j1 rule="hyper" parents="2 8 3"/>
    </justification>
  </clause>

  <clause id="34">
    <literal><![CDATA[
      P((x v (y v z)) -> (x v (y v (u v z))))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,24,a)].">
      <j1 rule="hyper" parents="2 8 24"/>
    </justification>
  </clause>

  <clause id="43">
    <literal><![CDATA[
      P(~ x v x)
    ]]></literal>
    <justification jstring="[hyper(2,a,25,a,b,14,a)].">
      <j1 rule="hyper" parents="2 25 14"/>
    </justification>
  </clause>

  <clause id="45">
    <literal><![CDATA[
      P(x v ~ x)
    ]]></literal>
    <justification jstring="[hyper(2,a,7,a,b,43,a)].">
      <j1 rule="hyper" parents="2 7 43"/>
    </justification>
  </clause>

  <clause id="48">
    <literal><![CDATA[
      P(x v (y v ~ x))
    ]]></literal>
    <justification jstring="[hyper(2,a,24,a,b,45,a)].">
      <j1 rule="hyper" parents="2 24 45"/>
    </justification>
  </clause>

  <clause id="55">
    <literal><![CDATA[
      P((x v (y v (z v u))) -> (x v (y v (u v z))))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,23,a)].">
      <j1 rule="hyper" parents="2 8 23"/>
    </justification>
  </clause>

  <clause id="57">
    <literal><![CDATA[
      P(~ (x v (y v z)) v (x v (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,3,a,b,23,a)].">
      <j1 rule="hyper" parents="2 3 23"/>
    </justification>
  </clause>

  <clause id="58">
    <literal><![CDATA[
      P(x v (~ x v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,23,a,b,48,a)].">
      <j1 rule="hyper" parents="2 23 48"/>
    </justification>
  </clause>

  <clause id="59">
    <literal><![CDATA[
      P(~ x v (x v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,23,a,b,14,a)].">
      <j1 rule="hyper" parents="2 23 14"/>
    </justification>
  </clause>

  <clause id="62">
    <literal><![CDATA[
      P((~ x v y) v x)
    ]]></literal>
    <justification jstring="[hyper(2,a,7,a,b,58,a)].">
      <j1 rule="hyper" parents="2 7 58"/>
    </justification>
  </clause>

  <clause id="68">
    <literal><![CDATA[
      P(x -> (x v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,59,a)].">
      <j1 rule="hyper" parents="2 4 59"/>
    </justification>
  </clause>

  <clause id="70">
    <literal><![CDATA[
      P((x v y) -> (x v (y v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,68,a)].">
      <j1 rule="hyper" parents="2 8 68"/>
    </justification>
  </clause>

  <clause id="95">
    <literal><![CDATA[
      P((x v (y v z)) -> (x v (y v (z v u))))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,70,a)].">
      <j1 rule="hyper" parents="2 8 70"/>
    </justification>
  </clause>

  <clause id="106">
    <literal><![CDATA[
      P((x v (y v (~ z v u))) -> (x v (y v (z -> u))))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,26,a)].">
      <j1 rule="hyper" parents="2 8 26"/>
    </justification>
  </clause>

  <clause id="113">
    <literal><![CDATA[
      P(~ (x v ~ y) v (y -> x))
    ]]></literal>
    <justification jstring="[hyper(2,a,26,a,b,19,a)].">
      <j1 rule="hyper" parents="2 26 19"/>
    </justification>
  </clause>

  <clause id="120">
    <literal><![CDATA[
      P((x v ~ y) -> (y -> x))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,113,a)].">
      <j1 rule="hyper" parents="2 4 113"/>
    </justification>
  </clause>

  <clause id="134">
    <literal><![CDATA[
      P(~ (x v (y v z)) v ((z v y) v x))
    ]]></literal>
    <justification jstring="[hyper(2,a,23,a,b,57,a)].">
      <j1 rule="hyper" parents="2 23 57"/>
    </justification>
  </clause>

  <clause id="142">
    <literal><![CDATA[
      P((x v (y v z)) -> ((z v y) v x))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,134,a)].">
      <j1 rule="hyper" parents="2 4 134"/>
    </justification>
  </clause>

  <clause id="153">
    <literal><![CDATA[
      P((~ (x v y) v z) v (x v (u v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,34,a,b,62,a)].">
      <j1 rule="hyper" parents="2 34 62"/>
    </justification>
  </clause>

  <clause id="155">
    <literal><![CDATA[
      P(~ (x v y) v (y v (z v x)))
    ]]></literal>
    <justification jstring="[hyper(2,a,34,a,b,19,a)].">
      <j1 rule="hyper" parents="2 34 19"/>
    </justification>
  </clause>

  <clause id="162">
    <literal><![CDATA[
      P(~ (x v (y v x)) v (y v x))
    ]]></literal>
    <justification jstring="[hyper(2,a,25,a,b,155,a)].">
      <j1 rule="hyper" parents="2 25 155"/>
    </justification>
  </clause>

  <clause id="164">
    <literal><![CDATA[
      P(~ (x v y) v ((z v x) v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,23,a,b,155,a)].">
      <j1 rule="hyper" parents="2 23 155"/>
    </justification>
  </clause>

  <clause id="172">
    <literal><![CDATA[
      P(~ (x v (~ y v x)) v (y -> x))
    ]]></literal>
    <justification jstring="[hyper(2,a,26,a,b,162,a)].">
      <j1 rule="hyper" parents="2 26 162"/>
    </justification>
  </clause>

  <clause id="178">
    <literal><![CDATA[
      P((x v (y v x)) -> (y v x))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,162,a)].">
      <j1 rule="hyper" parents="2 4 162"/>
    </justification>
  </clause>

  <clause id="193">
    <literal><![CDATA[
      P((x v (~ y v x)) -> (y -> x))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,172,a)].">
      <j1 rule="hyper" parents="2 4 172"/>
    </justification>
  </clause>

  <clause id="198">
    <literal><![CDATA[
      P(x v (~ (x v y) v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,178,a,b,153,a)].">
      <j1 rule="hyper" parents="2 178 153"/>
    </justification>
  </clause>

  <clause id="213">
    <literal><![CDATA[
      P(x v ((x v y) -> y))
    ]]></literal>
    <justification jstring="[hyper(2,a,26,a,b,198,a)].">
      <j1 rule="hyper" parents="2 26 198"/>
    </justification>
  </clause>

  <clause id="228">
    <literal><![CDATA[
      P(x v (~ (x v y) v (y v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,95,a,b,198,a)].">
      <j1 rule="hyper" parents="2 95 198"/>
    </justification>
  </clause>

  <clause id="244">
    <literal><![CDATA[
      P(x v (~ (x v y) v (z v (y v u))))
    ]]></literal>
    <justification jstring="[hyper(2,a,34,a,b,228,a)].">
      <j1 rule="hyper" parents="2 34 228"/>
    </justification>
  </clause>

  <clause id="268">
    <literal><![CDATA[
      P(x v ((y v (x v z)) -> (y v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,20,a,b,213,a)].">
      <j1 rule="hyper" parents="2 20 213"/>
    </justification>
  </clause>

  <clause id="274">
    <literal><![CDATA[
      P(x v (~ (y v (x v z)) v (y v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,27,a,b,268,a)].">
      <j1 rule="hyper" parents="2 27 268"/>
    </justification>
  </clause>

  <clause id="277">
    <literal><![CDATA[
      P(((x v (y v z)) -> (x v z)) v y)
    ]]></literal>
    <justification jstring="[hyper(2,a,7,a,b,268,a)].">
      <j1 rule="hyper" parents="2 7 268"/>
    </justification>
  </clause>

  <clause id="282">
    <literal><![CDATA[
      P(((x v (y v z)) -> (x v z)) v (y v u))
    ]]></literal>
    <justification jstring="[hyper(2,a,70,a,b,277,a)].">
      <j1 rule="hyper" parents="2 70 277"/>
    </justification>
  </clause>

  <clause id="318">
    <literal><![CDATA[
      P(~ (x v (y v z)) v ((u v x) v (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,55,a,b,164,a)].">
      <j1 rule="hyper" parents="2 55 164"/>
    </justification>
  </clause>

  <clause id="323">
    <literal><![CDATA[
      P(~ (x -> (y v z)) v (~ x v (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,55,a,b,10,a)].">
      <j1 rule="hyper" parents="2 55 10"/>
    </justification>
  </clause>

  <clause id="329">
    <literal><![CDATA[
      P(~ (x -> (y v z)) v (x -> (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,26,a,b,323,a)].">
      <j1 rule="hyper" parents="2 26 323"/>
    </justification>
  </clause>

  <clause id="341">
    <literal><![CDATA[
      P((x -> (y v z)) -> (x -> (z v y)))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,329,a)].">
      <j1 rule="hyper" parents="2 4 329"/>
    </justification>
  </clause>

  <clause id="376">
    <literal><![CDATA[
      P(x v (~ (x v y) v (z -> (y v u))))
    ]]></literal>
    <justification jstring="[hyper(2,a,106,a,b,244,a)].">
      <j1 rule="hyper" parents="2 106 244"/>
    </justification>
  </clause>

  <clause id="389">
    <literal><![CDATA[
      P(((x -> (y v z)) v y) -> (x -> (y v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,193,a,b,376,a)].">
      <j1 rule="hyper" parents="2 193 376"/>
    </justification>
  </clause>

  <clause id="405">
    <literal><![CDATA[
      P(((x v y) v (x v z)) -> ((x v y) v z))
    ]]></literal>
    <justification jstring="[hyper(2,a,389,a,b,282,a)].">
      <j1 rule="hyper" parents="2 389 282"/>
    </justification>
  </clause>

  <clause id="409">
    <literal><![CDATA[
      P((x v ((y v z) v (y v u))) -> (x v ((y v z) v u)))
    ]]></literal>
    <justification jstring="[hyper(2,a,8,a,b,405,a)].">
      <j1 rule="hyper" parents="2 8 405"/>
    </justification>
  </clause>

  <clause id="417">
    <literal><![CDATA[
      P(~ (x v (y v z)) v ((z v x) v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,409,a,b,318,a)].">
      <j1 rule="hyper" parents="2 409 318"/>
    </justification>
  </clause>

  <clause id="419">
    <literal><![CDATA[
      P(~ (x v (y v z)) v ((y v x) v z))
    ]]></literal>
    <justification jstring="[hyper(2,a,409,a,b,164,a)].">
      <j1 rule="hyper" parents="2 409 164"/>
    </justification>
  </clause>

  <clause id="439">
    <literal><![CDATA[
      P((x v (y v z)) -> ((z v x) v y))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,417,a)].">
      <j1 rule="hyper" parents="2 4 417"/>
    </justification>
  </clause>

  <clause id="440">
    <literal><![CDATA[
      P((x v (y v z)) -> (y v (z v x)))
    ]]></literal>
    <justification jstring="[hyper(2,a,341,a,b,439,a)].">
      <j1 rule="hyper" parents="2 341 439"/>
    </justification>
  </clause>

  <clause id="485">
    <literal><![CDATA[
      P((x v (y v z)) v ~ (z v (y v x)))
    ]]></literal>
    <justification jstring="[hyper(2,a,142,a,b,419,a)].">
      <j1 rule="hyper" parents="2 142 419"/>
    </justification>
  </clause>

  <clause id="498">
    <literal><![CDATA[
      P((x v (y v z)) -> (z v (y v x)))
    ]]></literal>
    <justification jstring="[hyper(2,a,120,a,b,485,a)].">
      <j1 rule="hyper" parents="2 120 485"/>
    </justification>
  </clause>

  <clause id="512">
    <literal><![CDATA[
      P((x v y) v (~ (x v (z v y)) v z))
    ]]></literal>
    <justification jstring="[hyper(2,a,498,a,b,274,a)].">
      <j1 rule="hyper" parents="2 498 274"/>
    </justification>
  </clause>

  <clause id="520">
    <literal><![CDATA[
      P(~ (x v (y v z)) v (y v (x v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,440,a,b,512,a)].">
      <j1 rule="hyper" parents="2 440 512"/>
    </justification>
  </clause>

  <clause id="543">
    <literal><![CDATA[
      P((x v (y v z)) -> (y v (x v z)))
    ]]></literal>
    <justification jstring="[hyper(2,a,4,a,b,520,a)].">
      <j1 rule="hyper" parents="2 4 520"/>
    </justification>
  </clause>

  <clause id="544">
    <literal><![CDATA[
      $F
    ]]></literal>
    <attribute><![CDATA[
      answer("WR5")
    ]]></attribute>
    <justification jstring="[resolve(543,a,9,a)].">
      <j1 rule="resolve" parents="543 9"/>
    </justification>
  </clause>

</proof>

</proofs>
