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

<heading><![CDATA[
Prover9 (32) version 22-May-2007, May 2007.
Process 27435 was started by mccune on cleo,
Tue May 22 14:45:44 2007
The command was "/home/mccune/bin/prover9 -f gt.in AN.in".
]]></heading>

<proof number="1" length="44" max_count="19">

<comments><![CDATA[
% Proof 1 at 0.04 (+ 0.00) seconds: N.
% Length of proof is 44.
% Level of proof is 13.
% Maximum clause weight is 19.
% Given clauses 64.
]]></comments>

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

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

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

  <clause id="4" type="assumption">
    <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" type="assumption">
    <literal><![CDATA[
      (x @ y) @ z = u @ (v @ w)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="7" type="assumption">
    <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="16">
    <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="18">
    <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="21">
    <literal><![CDATA[
      x'' * (x @ y) = y' * x * y
    ]]></literal>
    <justification jstring="[para(5(a,1),8(a,1,2))].">
      <j1 rule="para" parents="5 8"/>
    </justification>
  </clause>

  <clause id="22">
    <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="23">
    <literal><![CDATA[
      x' * y * x = y * (y @ x)
    ]]></literal>
    <justification jstring="[back_rewrite(21),rewrite([22(4)]),flip(a)].">
      <j1 rule="back_rewrite" parents="21"/>
      <j2 rule="rewrite" parents="22"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

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

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

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

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

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

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

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

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

  <clause id="111">
    <literal><![CDATA[
      x' * (y @ z) * x = y @ z
    ]]></literal>
    <justification jstring="[para(23(a,2),9(a,2)),rewrite([30(4),25(4),5(5)]),flip(a)].">
      <j1 rule="para" parents="23 9"/>
      <j2 rule="rewrite" parents="30 25 5"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

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

  <clause id="135">
    <literal><![CDATA[
      (x @ y)' = y @ x
    ]]></literal>
    <justification jstring="[para(23(a,2),95(a,1,1,1)),rewrite([125(4),125(2),69(5),1(4),1(5),1(4),5(5)]),flip(a)].">
      <j1 rule="para" parents="23 95"/>
      <j2 rule="rewrite" parents="125 125 69 1 1 1 5"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="139">
    <literal><![CDATA[
      x @ y * x = x @ y
    ]]></literal>
    <justification jstring="[back_rewrite(122),rewrite([125(2),1(5),5(5)]),flip(a)].">
      <j1 rule="back_rewrite" parents="122"/>
      <j2 rule="rewrite" parents="125 1 5"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

  <clause id="181">
    <literal><![CDATA[
      x' @ y = y @ x
    ]]></literal>
    <justification jstring="[back_rewrite(177),rewrite([180(3)])].">
      <j1 rule="back_rewrite" parents="177"/>
      <j2 rule="rewrite" parents="180"/>
    </justification>
  </clause>

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

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

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

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

  <clause id="407">
    <literal><![CDATA[
      (x @ y) * z = z * (x @ y)
    ]]></literal>
    <justification jstring="[para(170(a,1),42(a,1,2,2)),rewrite([135(2),25(3),28(4),2(5)])].">
      <j1 rule="para" parents="170 42"/>
      <j2 rule="rewrite" parents="135 25 28 2"/>
    </justification>
  </clause>

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

</proof>

</proofs>
