<?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>DN-gt.out</source>

<heading><![CDATA[
Prover9 (32) version August-2006A, August 2006.
Process 11356 was started by mccune on cleo.thornwood,
Sat Aug 12 20:59:56 2006
The command was "/home/mccune/bin/prover9 -f gt.in DN.in".
]]></heading>

<proof number="1" length="59" max_count="24">

<comments><![CDATA[
% Proof 1 at 0.16 (+ 0.00) seconds: N.
% Length of proof is 59.
% Level of proof is 14.
% Maximum clause weight is 24.
% Given clauses 107.
]]></comments>

  <clause id="1">
    <literal><![CDATA[
      (x * y) * z = x * y * z
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="2">
    <literal><![CDATA[
      e * x = x
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="3">
    <literal><![CDATA[
      x' * x = e
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="4">
    <literal><![CDATA[
      x @ y = x' * y' * x * y
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="5">
    <literal><![CDATA[
      x' * y' * x * y = x @ y
    ]]></literal>
    <justification jstring="[copy(4),flip(a)].">
      <j1 rule="copy" parents="4"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="6">
    <literal><![CDATA[
      (x @ y) * (z @ y) = x * z @ y
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="7">
    <literal><![CDATA[
      (A @ B) * C != C * (A @ B)
    ]]></literal>
    <attribute><![CDATA[
      answer(N)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="8">
    <literal><![CDATA[
      x' * x * y = y
    ]]></literal>
    <justification jstring="[para(3(a,1),1(a,1,1)),rewrite(2(2)),flip(a)].">
      <j1 rule="para" parents="3 1"/>
      <j2 rule="rewrite" parents="2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="9">
    <literal><![CDATA[
      x' * y' * x * y * z = (x @ y) * z
    ]]></literal>
    <justification jstring="[para(5(a,1),1(a,1,1)),rewrite(1(7),1(6)),flip(a)].">
      <j1 rule="para" parents="5 1"/>
      <j2 rule="rewrite" parents="1 1"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="10">
    <literal><![CDATA[
      (x * y)' * z' * x * y * z = x * y @ z
    ]]></literal>
    <justification jstring="[para(1(a,1),5(a,1,2,2))].">
      <j1 rule="para" parents="1 5"/>
    </justification>
  </clause>

  <clause id="11">
    <literal><![CDATA[
      e @ x = e
    ]]></literal>
    <justification jstring="[para(2(a,1),5(a,1,2,2)),rewrite(3(4),3(4)),flip(a)].">
      <j1 rule="para" parents="2 5"/>
      <j2 rule="rewrite" parents="3 3"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="12">
    <literal><![CDATA[
      x' @ x = e
    ]]></literal>
    <justification jstring="[para(3(a,1),5(a,1,2,2)),rewrite(8(6)),flip(a)].">
      <j1 rule="para" parents="3 5"/>
      <j2 rule="rewrite" parents="8"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="15">
    <literal><![CDATA[
      (x @ y)' * (z @ y)' * (x * z @ y) = (x @ y) @ (z @ y)
    ]]></literal>
    <justification jstring="[para(6(a,1),5(a,1,2,2))].">
      <j1 rule="para" parents="6 5"/>
    </justification>
  </clause>

  <clause id="16">
    <literal><![CDATA[
      (x @ y) * e = x * e @ y
    ]]></literal>
    <justification jstring="[para(11(a,1),6(a,1,2))].">
      <j1 rule="para" parents="11 6"/>
    </justification>
  </clause>

  <clause id="17">
    <literal><![CDATA[
      x' * y @ x = y @ x
    ]]></literal>
    <justification jstring="[para(12(a,1),6(a,1,1)),rewrite(2(3)),flip(a)].">
      <j1 rule="para" parents="12 6"/>
      <j2 rule="rewrite" parents="2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="18">
    <literal><![CDATA[
      x * y' @ y = x * e @ y
    ]]></literal>
    <justification jstring="[para(12(a,1),6(a,1,2)),rewrite(16(3)),flip(a)].">
      <j1 rule="para" parents="12 6"/>
      <j2 rule="rewrite" parents="16"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="19">
    <literal><![CDATA[
      (x * y)' * x * y * z = z
    ]]></literal>
    <justification jstring="[para(1(a,1),8(a,1,2))].">
      <j1 rule="para" parents="1 8"/>
    </justification>
  </clause>

  <clause id="21">
    <literal><![CDATA[
      x'' * e = x
    ]]></literal>
    <justification jstring="[para(3(a,1),8(a,1,2))].">
      <j1 rule="para" parents="3 8"/>
    </justification>
  </clause>

  <clause id="23">
    <literal><![CDATA[
      x @ x = e
    ]]></literal>
    <justification jstring="[para(8(a,1),5(a,1,2)),rewrite(3(2)),flip(a)].">
      <j1 rule="para" parents="8 5"/>
      <j2 rule="rewrite" parents="3"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="25">
    <literal><![CDATA[
      (x @ y)' * (x * z @ y) = z @ y
    ]]></literal>
    <justification jstring="[para(6(a,1),8(a,1,2))].">
      <j1 rule="para" parents="6 8"/>
    </justification>
  </clause>

  <clause id="26">
    <literal><![CDATA[
      x'' * y = x * y
    ]]></literal>
    <justification jstring="[para(8(a,1),8(a,1,2))].">
      <j1 rule="para" parents="8 8"/>
    </justification>
  </clause>

  <clause id="29">
    <literal><![CDATA[
      x * e = x
    ]]></literal>
    <justification jstring="[back_rewrite(21),rewrite(26(4))].">
      <j1 rule="back_rewrite" parents="21"/>
      <j2 rule="rewrite" parents="26"/>
    </justification>
  </clause>

  <clause id="31">
    <literal><![CDATA[
      x * y' @ y = x @ y
    ]]></literal>
    <justification jstring="[back_rewrite(18),rewrite(29(5))].">
      <j1 rule="back_rewrite" parents="18"/>
      <j2 rule="rewrite" parents="29"/>
    </justification>
  </clause>

  <clause id="32">
    <literal><![CDATA[
      x * y @ x = y @ x
    ]]></literal>
    <justification jstring="[para(23(a,1),6(a,1,1)),rewrite(2(3)),flip(a)].">
      <j1 rule="para" parents="23 6"/>
      <j2 rule="rewrite" parents="2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="50">
    <literal><![CDATA[
      x' * y * x * z = (x @ y') * y * z
    ]]></literal>
    <justification jstring="[para(8(a,1),9(a,1,2,2,2)),rewrite(26(5))].">
      <j1 rule="para" parents="8 9"/>
      <j2 rule="rewrite" parents="26"/>
    </justification>
  </clause>

  <clause id="56">
    <literal><![CDATA[
      (x * y')' * y' * x = x @ y
    ]]></literal>
    <justification jstring="[para(3(a,1),10(a,1,2,2,2)),rewrite(29(6),31(9))].">
      <j1 rule="para" parents="3 10"/>
      <j2 rule="rewrite" parents="29 31"/>
    </justification>
  </clause>

  <clause id="61">
    <literal><![CDATA[
      (x * y)' * y * x = y @ x
    ]]></literal>
    <justification jstring="[para(8(a,1),10(a,1,2)),rewrite(32(6))].">
      <j1 rule="para" parents="8 10"/>
      <j2 rule="rewrite" parents="32"/>
    </justification>
  </clause>

  <clause id="64">
    <literal><![CDATA[
      x' @ y = y @ x
    ]]></literal>
    <justification jstring="[back_rewrite(56),rewrite(61(6))].">
      <j1 rule="back_rewrite" parents="56"/>
      <j2 rule="rewrite" parents="61"/>
    </justification>
  </clause>

  <clause id="69">
    <literal><![CDATA[
      (B' @ A) * C != C * (A @ B)
    ]]></literal>
    <attribute><![CDATA[
      answer(N)
    ]]></attribute>
    <justification jstring="[para(64(a,2),7(a,1,1))].">
      <j1 rule="para" parents="64 7"/>
    </justification>
  </clause>

  <clause id="74">
    <literal><![CDATA[
      x' @ y' = x @ y
    ]]></literal>
    <justification jstring="[para(64(a,2),64(a,1))].">
      <j1 rule="para" parents="64 64"/>
    </justification>
  </clause>

  <clause id="80">
    <literal><![CDATA[
      x * x' = e
    ]]></literal>
    <justification jstring="[para(26(a,1),3(a,1))].">
      <j1 rule="para" parents="26 3"/>
    </justification>
  </clause>

  <clause id="88">
    <literal><![CDATA[
      x'' = x
    ]]></literal>
    <justification jstring="[para(26(a,1),29(a,1)),rewrite(29(2)),flip(a)].">
      <j1 rule="para" parents="26 29"/>
      <j2 rule="rewrite" parents="29"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="90">
    <literal><![CDATA[
      x @ x' = e
    ]]></literal>
    <justification jstring="[para(88(a,1),12(a,1,1))].">
      <j1 rule="para" parents="88 12"/>
    </justification>
  </clause>

  <clause id="91">
    <literal><![CDATA[
      x @ y' = y @ x
    ]]></literal>
    <justification jstring="[para(88(a,1),64(a,1,1)),flip(a)].">
      <j1 rule="para" parents="88 64"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="105">
    <literal><![CDATA[
      x * y @ y' = y @ x
    ]]></literal>
    <justification jstring="[para(80(a,1),10(a,1,2,2,2)),rewrite(88(4),29(4),61(4)),flip(a)].">
      <j1 rule="para" parents="80 10"/>
      <j2 rule="rewrite" parents="88 29 61"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="121">
    <literal><![CDATA[
      (x' @ y) @ (z @ x) = (y @ x) @ (z @ x)
    ]]></literal>
    <justification jstring="[para(64(a,2),15(a,2,1)),rewrite(15(8)),flip(a)].">
      <j1 rule="para" parents="64 15"/>
      <j2 rule="rewrite" parents="15"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="133">
    <literal><![CDATA[
      (x @ y) * (y @ z') = x * z @ y
    ]]></literal>
    <justification jstring="[para(91(a,2),6(a,1,2))].">
      <j1 rule="para" parents="91 6"/>
    </justification>
  </clause>

  <clause id="140">
    <literal><![CDATA[
      x' @ y = x @ y'
    ]]></literal>
    <justification jstring="[para(91(a,1),64(a,1)),flip(a)].">
      <j1 rule="para" parents="91 64"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="141">
    <literal><![CDATA[
      (B @ A') * C != C * (B @ A')
    ]]></literal>
    <attribute><![CDATA[
      answer(N)
    ]]></attribute>
    <justification jstring="[para(91(a,2),69(a,2,2)),rewrite(140(4))].">
      <j1 rule="para" parents="91 69"/>
      <j2 rule="rewrite" parents="140"/>
    </justification>
  </clause>

  <clause id="148">
    <literal><![CDATA[
      (x @ y)' * (z @ y)' * (y @ (x * z)') = (x @ y) @ (z @ y)
    ]]></literal>
    <justification jstring="[para(91(a,2),15(a,1,2,2))].">
      <j1 rule="para" parents="91 15"/>
    </justification>
  </clause>

  <clause id="156">
    <literal><![CDATA[
      x' * y * x @ y = (y @ x) @ y
    ]]></literal>
    <justification jstring="[para(5(a,1),17(a,1,1)),flip(a)].">
      <j1 rule="para" parents="5 17"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="159">
    <literal><![CDATA[
      x' * y * x * z @ y = (y @ x) * z @ y
    ]]></literal>
    <justification jstring="[para(9(a,1),17(a,1,1)),flip(a)].">
      <j1 rule="para" parents="9 17"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="166">
    <literal><![CDATA[
      x * y * z @ y = x * z @ y
    ]]></literal>
    <justification jstring="[para(32(a,1),6(a,1,2)),rewrite(6(3)),flip(a)].">
      <j1 rule="para" parents="32 6"/>
      <j2 rule="rewrite" parents="6"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="175">
    <literal><![CDATA[
      (x @ y) * z @ x = z @ x
    ]]></literal>
    <justification jstring="[back_rewrite(159),rewrite(166(5),8(3)),flip(a)].">
      <j1 rule="back_rewrite" parents="159"/>
      <j2 rule="rewrite" parents="166 8"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="176">
    <literal><![CDATA[
      (x @ y) @ x = e
    ]]></literal>
    <justification jstring="[back_rewrite(156),rewrite(166(4),3(2),11(2)),flip(a)].">
      <j1 rule="back_rewrite" parents="156"/>
      <j2 rule="rewrite" parents="166 3 11"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="183">
    <literal><![CDATA[
      x' @ (x @ y) = e
    ]]></literal>
    <justification jstring="[para(176(a,1),64(a,2))].">
      <j1 rule="para" parents="176 64"/>
    </justification>
  </clause>

  <clause id="209">
    <literal><![CDATA[
      (x * y)' * x = y'
    ]]></literal>
    <justification jstring="[para(80(a,1),19(a,1,2,2)),rewrite(29(4))].">
      <j1 rule="para" parents="80 19"/>
      <j2 rule="rewrite" parents="29"/>
    </justification>
  </clause>

  <clause id="242">
    <literal><![CDATA[
      (x @ y)' = x' @ y
    ]]></literal>
    <justification jstring="[para(80(a,1),25(a,1,2,1)),rewrite(11(4),29(4))].">
      <j1 rule="para" parents="80 25"/>
      <j2 rule="rewrite" parents="11 29"/>
    </justification>
  </clause>

  <clause id="244">
    <literal><![CDATA[
      (x @ y) * (y @ x) = e
    ]]></literal>
    <justification jstring="[para(90(a,1),25(a,2)),rewrite(242(3),74(3),105(4))].">
      <j1 rule="para" parents="90 25"/>
      <j2 rule="rewrite" parents="242 74 105"/>
    </justification>
  </clause>

  <clause id="264">
    <literal><![CDATA[
      (x @ y) @ (z @ y) = (x @ z) @ y
    ]]></literal>
    <justification jstring="[back_rewrite(148),rewrite(242(2),242(4),133(8),6(7),5(5)),flip(a)].">
      <j1 rule="back_rewrite" parents="148"/>
      <j2 rule="rewrite" parents="242 242 133 6 5"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="278">
    <literal><![CDATA[
      x' * y @ (x @ z) = y @ (x @ z)
    ]]></literal>
    <justification jstring="[para(183(a,1),6(a,1,1)),rewrite(2(4)),flip(a)].">
      <j1 rule="para" parents="183 6"/>
      <j2 rule="rewrite" parents="2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="440">
    <literal><![CDATA[
      (x * y)' = y' * x'
    ]]></literal>
    <justification jstring="[para(8(a,1),209(a,1,1,1)),flip(a)].">
      <j1 rule="para" parents="8 209"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="497">
    <literal><![CDATA[
      (x @ y') * (x @ y) = e
    ]]></literal>
    <justification jstring="[para(64(a,1),244(a,1,2))].">
      <j1 rule="para" parents="64 244"/>
    </justification>
  </clause>

  <clause id="1174">
    <literal><![CDATA[
      ((x @ y') @ z') * z * (x @ y) = (x @ y) * z
    ]]></literal>
    <justification jstring="[para(497(a,1),50(a,1,2,2)),rewrite(242(3),74(3),29(3)),flip(a)].">
      <j1 rule="para" parents="497 50"/>
      <j2 rule="rewrite" parents="242 74 29"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1422">
    <literal><![CDATA[
      (x' @ y) @ (z @ x) = e
    ]]></literal>
    <justification jstring="[para(175(a,1),183(a,1,2)),rewrite(440(3),242(3),278(6))].">
      <j1 rule="para" parents="175 183"/>
      <j2 rule="rewrite" parents="440 242 278"/>
    </justification>
  </clause>

  <clause id="1448">
    <literal><![CDATA[
      (x @ y) @ (z @ y) = e
    ]]></literal>
    <justification jstring="[back_rewrite(121),rewrite(1422(4)),flip(a)].">
      <j1 rule="back_rewrite" parents="121"/>
      <j2 rule="rewrite" parents="1422"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1452">
    <literal><![CDATA[
      (x @ y) @ z = e
    ]]></literal>
    <justification jstring="[back_rewrite(264),rewrite(1448(3)),flip(a)].">
      <j1 rule="back_rewrite" parents="264"/>
      <j2 rule="rewrite" parents="1448"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1465">
    <literal><![CDATA[
      (x @ y) * z = z * (x @ y)
    ]]></literal>
    <justification jstring="[back_rewrite(1174),rewrite(1452(4),2(4)),flip(a)].">
      <j1 rule="back_rewrite" parents="1174"/>
      <j2 rule="rewrite" parents="1452 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1466">
    <literal><![CDATA[
      $F
    ]]></literal>
    <attribute><![CDATA[
      answer(N)
    ]]></attribute>
    <justification jstring="[resolve(1465,a,141,a)].">
      <j1 rule="resolve" parents="1465 141"/>
    </justification>
  </clause>

</proof>

</proofs>
