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

<heading><![CDATA[
Prover9 (32) version 2009-02A, February 2009.
Process 12218 was started by mccune on cleo,
Wed Feb 25 10:10:48 2009
The command was "/home/mccune/bin/prover9 -f BA2.in BA2-interp.outx".
]]></heading>

<proof number="1" length="94" max_count="45">

<comments><![CDATA[
% Proof 1 at 31.13 (+ 0.07) seconds: "Sheffer".
% Length of proof is 94.
% Level of proof is 25.
% Maximum clause weight is 43.
% Given clauses 271.

]]></comments>

  <clause id="1" type="goal">
    <literal><![CDATA[
      f(f(x,x),f(x,x)) = x & f(x,f(y,f(y,y))) = f(x,x) & f(f(f(y,y),x),f(f(z,z),x)) = f(f(x,f(y,z)),f(x,f(y,z)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></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[
      f(x,y) = f(y,x)
    ]]></literal>
    <attribute><![CDATA[
      label(commutativity)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="3" type="assumption">
    <literal><![CDATA[
      f(f(x,y),f(x,f(y,z))) = x
    ]]></literal>
    <attribute><![CDATA[
      label(Veroff_2)
    ]]></attribute>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="4" type="deny">
    <literal><![CDATA[
      f(f(c1,c1),f(c1,c1)) != c1
    ]]></literal>
    <literal><![CDATA[
      f(c1,f(c2,f(c2,c2))) != f(c1,c1)
    ]]></literal>
    <literal><![CDATA[
      f(f(f(c2,c2),c1),f(f(c3,c3),c1)) != f(f(c1,f(c2,c3)),f(c1,f(c2,c3)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[deny(1)].">
      <j1 rule="deny" parents="1"/>
    </justification>
  </clause>

  <clause id="5">
    <literal><![CDATA[
      f(f(c1,c1),f(c1,c1)) != c1
    ]]></literal>
    <literal><![CDATA[
      f(c1,f(c2,f(c2,c2))) != f(c1,c1)
    ]]></literal>
    <literal><![CDATA[
      f(f(c1,f(c2,c3)),f(c1,f(c2,c3))) != f(f(c1,f(c2,c2)),f(c1,f(c3,c3)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[copy(4),rewrite([2(25),2(30)]),flip(c)].">
      <j1 rule="copy" parents="4"/>
      <j2 rule="rewrite" parents="2 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="6">
    <literal><![CDATA[
      f(f(x,y),f(y,f(x,z))) = y
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(2(a,1),3(a,1,1))].">
      <j1 rule="para" parents="2 3"/>
    </justification>
  </clause>

  <clause id="7">
    <literal><![CDATA[
      f(x,f(f(x,y),f(z,f(x,f(y,u))))) = f(x,y)
    ]]></literal>
    <justification jstring="[para(3(a,1),3(a,1,1)),rewrite([2(4)])].">
      <j1 rule="para" parents="3 3"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

  <clause id="9">
    <literal><![CDATA[
      f(f(x,y),f(x,f(z,y))) = x
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(6(a,1),3(a,1,2,2)),rewrite([2(4)])].">
      <j1 rule="para" parents="6 3"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

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

  <clause id="12">
    <literal><![CDATA[
      f(f(x,y),f(y,f(z,x))) = y
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(6(a,1),6(a,1,2,2)),rewrite([2(2),2(3),2(4)])].">
      <j1 rule="para" parents="6 6"/>
      <j2 rule="rewrite" parents="2 2 2"/>
    </justification>
  </clause>

  <clause id="13">
    <literal><![CDATA[
      f(x,f(f(x,y),f(y,z))) = f(x,y)
    ]]></literal>
    <justification jstring="[para(3(a,1),9(a,1,2)),rewrite([2(4)])].">
      <j1 rule="para" parents="3 9"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="14">
    <literal><![CDATA[
      f(x,f(f(x,f(y,z)),f(u,f(x,z)))) = f(x,f(y,z))
    ]]></literal>
    <justification jstring="[para(9(a,1),6(a,1,1)),rewrite([2(4)])].">
      <j1 rule="para" parents="9 6"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="15">
    <literal><![CDATA[
      f(x,f(f(y,x),f(y,z))) = f(y,x)
    ]]></literal>
    <justification jstring="[para(6(a,1),9(a,1,2)),rewrite([2(4)])].">
      <j1 rule="para" parents="6 9"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="16">
    <literal><![CDATA[
      f(x,f(f(y,z),f(y,x))) = f(y,x)
    ]]></literal>
    <justification jstring="[para(3(a,1),12(a,1,2)),rewrite([2(2),2(4),2(5)])].">
      <j1 rule="para" parents="3 12"/>
      <j2 rule="rewrite" parents="2 2 2"/>
    </justification>
  </clause>

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

  <clause id="20">
    <literal><![CDATA[
      f(c1,f(c2,f(c2,c2))) != f(c1,c1)
    ]]></literal>
    <literal><![CDATA[
      f(f(c1,f(c2,c3)),f(c1,f(c2,c3))) != f(f(c1,f(c2,c2)),f(c1,f(c3,c3)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[back_rewrite(5),rewrite([19(7)]),xx(a)].">
      <j1 rule="back_rewrite" parents="5"/>
      <j2 rule="rewrite" parents="19"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

  <clause id="21">
    <literal><![CDATA[
      f(x,f(f(x,x),f(y,f(x,z)))) = f(x,x)
    ]]></literal>
    <justification jstring="[para(19(a,1),3(a,1,1)),rewrite([2(3)])].">
      <j1 rule="para" parents="19 3"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

  <clause id="24">
    <literal><![CDATA[
      f(x,f(y,f(x,x))) = f(x,x)
    ]]></literal>
    <justification jstring="[para(19(a,1),9(a,1,2)),rewrite([2(2),2(3)])].">
      <j1 rule="para" parents="19 9"/>
      <j2 rule="rewrite" parents="2 2"/>
    </justification>
  </clause>

  <clause id="26">
    <literal><![CDATA[
      f(f(x,x),f(f(x,y),f(z,f(x,x)))) = f(z,f(x,x))
    ]]></literal>
    <justification jstring="[para(24(a,1),6(a,1,1)),rewrite([2(5)])].">
      <j1 rule="para" parents="24 6"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="27">
    <literal><![CDATA[
      f(f(x,y),f(y,y)) = y
    ]]></literal>
    <justification jstring="[para(24(a,1),6(a,1,2))].">
      <j1 rule="para" parents="24 6"/>
    </justification>
  </clause>

  <clause id="29">
    <literal><![CDATA[
      f(f(x,y),f(f(x,z),f(f(x,y),f(u,f(x,f(y,w)))))) = f(f(x,y),f(u,f(x,f(y,w))))
    ]]></literal>
    <justification jstring="[para(7(a,1),6(a,1,1)),rewrite([2(8)])].">
      <j1 rule="para" parents="7 6"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="36">
    <literal><![CDATA[
      f(x,f(y,f(x,f(y,z)))) = f(x,f(y,z))
    ]]></literal>
    <justification jstring="[para(3(a,1),13(a,1,2,2)),rewrite([2(3)])].">
      <j1 rule="para" parents="3 13"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

  <clause id="59">
    <literal><![CDATA[
      f(f(x,f(y,f(x,z))),f(x,f(z,u))) = x
    ]]></literal>
    <justification jstring="[para(11(a,1),9(a,1,2))].">
      <j1 rule="para" parents="11 9"/>
    </justification>
  </clause>

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

  <clause id="117">
    <literal><![CDATA[
      f(x,f(y,f(x,y))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(9(a,1),36(a,1,2)),rewrite([2(3)]),flip(a)].">
      <j1 rule="para" parents="9 36"/>
      <j2 rule="rewrite" parents="2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="124">
    <literal><![CDATA[
      f(f(x,f(y,z)),f(x,f(y,z))) = f(f(x,f(x,y)),f(x,f(y,z)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(11(a,1),36(a,1,2)),rewrite([2(10)])].">
      <j1 rule="para" parents="11 36"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="160">
    <literal><![CDATA[
      f(x,f(y,y)) = f(x,f(x,y))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(117(a,1),36(a,1,2)),rewrite([2(3)])].">
      <j1 rule="para" parents="117 36"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="161">
    <literal><![CDATA[
      f(x,f(f(x,f(y,z)),f(y,f(x,f(y,z))))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(36(a,1),117(a,1,2,2)),rewrite([2(6)])].">
      <j1 rule="para" parents="36 117"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="172">
    <literal><![CDATA[
      f(c1,f(c2,f(c2,c2))) != f(c1,c1)
    ]]></literal>
    <literal><![CDATA[
      f(f(c1,f(c2,c3)),f(c1,f(c2,c3))) != f(f(c1,f(c1,c2)),f(c1,f(c1,c3)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[back_rewrite(20),rewrite([160(27),160(32)])].">
      <j1 rule="back_rewrite" parents="20"/>
      <j2 rule="rewrite" parents="160 160"/>
    </justification>
  </clause>

  <clause id="173">
    <literal><![CDATA[
      f(x,f(y,y)) = f(x,f(y,x))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(160(a,1),2(a,2)),rewrite([2(2),2(3)])].">
      <j1 rule="para" parents="160 2"/>
      <j2 rule="rewrite" parents="2 2"/>
    </justification>
  </clause>

  <clause id="176">
    <literal><![CDATA[
      f(x,f(x,f(y,y))) = f(y,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(160(a,1),9(a,1)),rewrite([2(2),173(2,R),2(4),173(4,R),2(6),6(6),2(3)])].">
      <j1 rule="para" parents="160 9"/>
      <j2 rule="rewrite" parents="2 173 2 173 2 6 2"/>
    </justification>
  </clause>

  <clause id="179">
    <literal><![CDATA[
      f(x,f(y,f(y,x))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(160(a,1),27(a,1,1)),rewrite([19(5),2(3)])].">
      <j1 rule="para" parents="160 27"/>
      <j2 rule="rewrite" parents="19 2"/>
    </justification>
  </clause>

  <clause id="191">
    <literal><![CDATA[
      f(x,f(f(y,y),f(x,f(y,z)))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[back_rewrite(161),rewrite([173(6,R),2(4)])].">
      <j1 rule="back_rewrite" parents="161"/>
      <j2 rule="rewrite" parents="173 2"/>
    </justification>
  </clause>

  <clause id="210">
    <literal><![CDATA[
      f(f(x,f(y,y)),f(f(y,z),f(y,z))) = f(y,z)
    ]]></literal>
    <justification jstring="[para(26(a,1),173(a,2,2)),rewrite([19(7),2(5),23(5),2(8),173(8,R)]),flip(a)].">
      <j1 rule="para" parents="26 173"/>
      <j2 rule="rewrite" parents="19 2 23 2 173"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="211">
    <literal><![CDATA[
      f(f(x,y),f(x,f(z,f(z,f(y,y))))) = x
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(176(a,2),3(a,1,2,2))].">
      <j1 rule="para" parents="176 3"/>
    </justification>
  </clause>

  <clause id="222">
    <literal><![CDATA[
      f(x,f(y,f(y,f(z,z)))) = f(x,f(z,y))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(176(a,1),11(a,1,2,1,2)),rewrite([14(6)]),flip(a)].">
      <j1 rule="para" parents="176 11"/>
      <j2 rule="rewrite" parents="14"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="354">
    <literal><![CDATA[
      f(f(x,f(y,f(y,z))),f(x,f(z,z))) = x
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(179(a,1),12(a,1,2,2)),rewrite([2(3)])].">
      <j1 rule="para" parents="179 12"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="428">
    <literal><![CDATA[
      f(x,f(y,f(x,f(z,f(y,y))))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(19(a,1),191(a,1,2,1)),rewrite([2(2)])].">
      <j1 rule="para" parents="19 191"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="435">
    <literal><![CDATA[
      f(f(x,x),f(y,f(x,z))) = f(f(x,x),f(y,y))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(191(a,1),36(a,1,2)),flip(a)].">
      <j1 rule="para" parents="191 36"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="439">
    <literal><![CDATA[
      f(x,f(y,f(y,y))) = f(x,x)
    ]]></literal>
    <justification jstring="[para(191(a,1),39(a,1)),flip(a)].">
      <j1 rule="para" parents="191 39"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="447">
    <literal><![CDATA[
      f(f(c1,f(c2,c3)),f(c1,f(c2,c3))) != f(f(c1,f(c1,c2)),f(c1,f(c1,c3)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[back_unit_del(172),unit_del(a,439)].">
      <j1 rule="back_unit_del" parents="172"/>
      <j2 rule="unit_del" parents="439"/>
    </justification>
  </clause>

  <clause id="486">
    <literal><![CDATA[
      f(f(x,x),f(f(x,y),f(z,f(z,z)))) = f(z,f(z,z))
    ]]></literal>
    <justification jstring="[para(439(a,1),6(a,1,1)),rewrite([2(5)])].">
      <j1 rule="para" parents="439 6"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

  <clause id="496">
    <literal><![CDATA[
      f(x,f(x,x)) = f(y,f(y,y))
    ]]></literal>
    <justification jstring="[para(439(a,1),27(a,1,1)),rewrite([173(7),2(5),490(5),2(2)])].">
      <j1 rule="para" parents="439 27"/>
      <j2 rule="rewrite" parents="173 2 490 2"/>
    </justification>
  </clause>

  <clause id="498">
    <literal><![CDATA[
      f(x,f(f(x,y),f(z,f(z,z)))) = f(x,y)
    ]]></literal>
    <justification jstring="[para(439(a,2),15(a,1,2)),rewrite([2(1),2(6)])].">
      <j1 rule="para" parents="439 15"/>
      <j2 rule="rewrite" parents="2 2"/>
    </justification>
  </clause>

  <clause id="528">
    <literal><![CDATA[
      f(x,f(x,x)) = c_0
    ]]></literal>
    <justification jstring="[new_symbol(496)].">
      <j1 rule="new_symbol" parents="496"/>
    </justification>
  </clause>

  <clause id="549">
    <literal><![CDATA[
      f(x,f(c_0,f(x,y))) = f(x,y)
    ]]></literal>
    <justification jstring="[back_rewrite(498),rewrite([528(3),2(3)])].">
      <j1 rule="back_rewrite" parents="498"/>
      <j2 rule="rewrite" parents="528 2"/>
    </justification>
  </clause>

  <clause id="554">
    <literal><![CDATA[
      f(c_0,f(x,x)) = x
    ]]></literal>
    <justification jstring="[back_rewrite(490),rewrite([528(3),2(3)])].">
      <j1 rule="back_rewrite" parents="490"/>
      <j2 rule="rewrite" parents="528 2"/>
    </justification>
  </clause>

  <clause id="558">
    <literal><![CDATA[
      f(f(x,x),f(c_0,f(x,y))) = c_0
    ]]></literal>
    <justification jstring="[back_rewrite(486),rewrite([528(4),2(4),528(7)])].">
      <j1 rule="back_rewrite" parents="486"/>
      <j2 rule="rewrite" parents="528 2 528"/>
    </justification>
  </clause>

  <clause id="561">
    <literal><![CDATA[
      f(x,c_0) = f(x,x)
    ]]></literal>
    <justification jstring="[back_rewrite(439),rewrite([528(2)])].">
      <j1 rule="back_rewrite" parents="439"/>
      <j2 rule="rewrite" parents="528"/>
    </justification>
  </clause>

  <clause id="571">
    <literal><![CDATA[
      f(f(c1,f(c1,c2)),f(c1,f(c1,c3))) != f(c_0,f(c1,f(c2,c3)))
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[back_rewrite(447),rewrite([561(11,R),2(7)]),flip(a)].">
      <j1 rule="back_rewrite" parents="447"/>
      <j2 rule="rewrite" parents="561 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="581">
    <literal><![CDATA[
      f(f(x,f(x,y)),f(x,f(y,z))) = f(c_0,f(x,f(y,z)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[back_rewrite(124),rewrite([561(5,R),2(4)]),flip(a)].">
      <j1 rule="back_rewrite" parents="124"/>
      <j2 rule="rewrite" parents="561 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="591">
    <literal><![CDATA[
      f(f(x,f(x,y)),f(c_0,f(y,z))) = f(y,z)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[back_rewrite(210),rewrite([173(2),2(1),561(5,R),2(5)])].">
      <j1 rule="back_rewrite" parents="210"/>
      <j2 rule="rewrite" parents="173 2 561 2"/>
    </justification>
  </clause>

  <clause id="647">
    <literal><![CDATA[
      f(f(x,y),f(c_0,f(x,f(y,z)))) = f(x,f(x,y))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(13(a,1),29(a,1,2,2)),rewrite([2(4),16(6),2(5),581(8)]),flip(a)].">
      <j1 rule="para" parents="13 29"/>
      <j2 rule="rewrite" parents="2 16 2 581"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="738">
    <literal><![CDATA[
      f(x,f(f(x,y),f(c_0,f(y,z)))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(211(a,1),191(a,1,2,2,2)),rewrite([561(3,R),2(3),2(5)])].">
      <j1 rule="para" parents="211 191"/>
      <j2 rule="rewrite" parents="561 2 2"/>
    </justification>
  </clause>

  <clause id="809">
    <literal><![CDATA[
      f(c_0,f(c_0,f(x,y))) = f(x,y)
    ]]></literal>
    <justification jstring="[para(549(a,1),176(a,2)),rewrite([2(8),558(8),2(5)])].">
      <j1 rule="para" parents="549 176"/>
      <j2 rule="rewrite" parents="2 558 2"/>
    </justification>
  </clause>

  <clause id="898">
    <literal><![CDATA[
      f(x,f(c_0,f(y,z))) = f(x,f(x,f(y,z)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(222(a,1),173(a,1,2)),rewrite([173(2),2(1),8(3),2(2),561(3,R),2(3),173(6),2(5),8(7),2(6)])].">
      <j1 rule="para" parents="222 173"/>
      <j2 rule="rewrite" parents="173 2 8 2 561 2 173 2 8 2"/>
    </justification>
  </clause>

  <clause id="900">
    <literal><![CDATA[
      f(x,f(x,f(c_0,f(y,z)))) = f(x,f(y,z))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(222(a,1),176(a,1,2,2)),rewrite([173(2),2(1),8(3),2(2),561(3,R),2(3),173(7),2(6),8(8),2(7)])].">
      <j1 rule="para" parents="222 176"/>
      <j2 rule="rewrite" parents="173 2 8 2 561 2 173 2 8 2"/>
    </justification>
  </clause>

  <clause id="947">
    <literal><![CDATA[
      f(x,f(c_0,f(y,f(y,x)))) = c_0
    ]]></literal>
    <justification jstring="[para(554(a,1),354(a,1,2)),rewrite([2(5)])].">
      <j1 rule="para" parents="554 354"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="969">
    <literal><![CDATA[
      f(x,f(y,f(z,f(x,x)))) = f(x,f(x,y))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(428(a,1),36(a,1,2)),rewrite([173(2),2(1)]),flip(a)].">
      <j1 rule="para" parents="428 36"/>
      <j2 rule="rewrite" parents="173 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1057">
    <literal><![CDATA[
      f(f(x,y),f(c_0,f(z,f(z,x)))) = f(z,f(z,x))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(591(a,1),3(a,1,2)),rewrite([2(4),2(6)])].">
      <j1 rule="para" parents="591 3"/>
      <j2 rule="rewrite" parents="2 2"/>
    </justification>
  </clause>

  <clause id="1061">
    <literal><![CDATA[
      f(f(x,f(x,f(y,z))),f(z,z)) = z
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(6(a,1),591(a,1,2,2)),rewrite([2(5),561(5),6(9)])].">
      <j1 rule="para" parents="6 591"/>
      <j2 rule="rewrite" parents="2 561 6"/>
    </justification>
  </clause>

  <clause id="1157">
    <literal><![CDATA[
      f(x,f(y,f(y,f(z,f(z,x))))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(19(a,1),1061(a,1,2)),rewrite([173(2),2(1),2(5)])].">
      <j1 rule="para" parents="19 1061"/>
      <j2 rule="rewrite" parents="173 2 2"/>
    </justification>
  </clause>

  <clause id="1200">
    <literal><![CDATA[
      f(x,f(f(x,f(y,z)),f(z,z))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(6(a,1),738(a,1,2,2,2)),rewrite([2(4),561(4)])].">
      <j1 rule="para" parents="6 738"/>
      <j2 rule="rewrite" parents="2 561"/>
    </justification>
  </clause>

  <clause id="1241">
    <literal><![CDATA[
      f(f(x,f(y,z)),f(c_0,f(x,f(x,y)))) = c_0
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(3(a,1),947(a,1,2,2,2)),rewrite([2(5)])].">
      <j1 rule="para" parents="3 947"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="1392">
    <literal><![CDATA[
      f(f(x,y),f(c_0,f(y,f(x,z)))) = f(y,f(x,x))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(6(a,1),898(a,2,2)),rewrite([2(8),173(8,R)])].">
      <j1 rule="para" parents="6 898"/>
      <j2 rule="rewrite" parents="2 173"/>
    </justification>
  </clause>

  <clause id="1471">
    <literal><![CDATA[
      f(f(x,x),f(y,f(c_0,f(z,x)))) = x
    ]]></literal>
    <justification jstring="[para(898(a,2),1061(a,1,1)),rewrite([2(6)])].">
      <j1 rule="para" parents="898 1061"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="1511">
    <literal><![CDATA[
      f(f(x,y),f(c_0,f(f(x,x),f(z,u)))) = f(f(x,x),f(z,u))
    ]]></literal>
    <justification jstring="[para(81(a,1),1471(a,1,2,2,2)),rewrite([561(7,R),2(5),554(8),2(6),2(7)])].">
      <j1 rule="para" parents="81 1471"/>
      <j2 rule="rewrite" parents="561 2 554 2 2"/>
    </justification>
  </clause>

  <clause id="1537">
    <literal><![CDATA[
      f(x,f(y,f(x,f(z,f(x,y))))) = f(x,x)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(59(a,1),39(a,1,2)),flip(a)].">
      <j1 rule="para" parents="59 39"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="2106">
    <literal><![CDATA[
      f(f(x,f(y,f(z,u))),f(c_0,f(y,f(y,z)))) = f(y,f(y,z))
    ]]></literal>
    <justification jstring="[para(1241(a,1),1157(a,1,2,2,2,2)),rewrite([2(8),900(10),2(8),561(17,R),2(14),809(14)])].">
      <j1 rule="para" parents="1241 1157"/>
      <j2 rule="rewrite" parents="2 900 2 561 2 809"/>
    </justification>
  </clause>

  <clause id="2483">
    <literal><![CDATA[
      f(x,f(y,f(z,f(x,y)))) = f(x,f(x,y))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(1537(a,1),36(a,1,2)),rewrite([173(2),2(1),2(3)]),flip(a)].">
      <j1 rule="para" parents="1537 36"/>
      <j2 rule="rewrite" parents="173 2 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="3310">
    <literal><![CDATA[
      f(x,f(c_0,f(y,f(z,f(x,y))))) = f(x,y)
    ]]></literal>
    <justification jstring="[para(2483(a,1),898(a,2,2)),rewrite([8(9)])].">
      <j1 rule="para" parents="2483 898"/>
      <j2 rule="rewrite" parents="8"/>
    </justification>
  </clause>

  <clause id="4881">
    <literal><![CDATA[
      f(f(x,x),f(f(x,y),f(z,u))) = f(f(x,x),f(c_0,f(z,u)))
    ]]></literal>
    <justification jstring="[para(222(a,1),435(a,2,2)),rewrite([173(3),2(2),8(4),2(4),173(8),2(7),8(9),2(8),561(9,R),2(9)])].">
      <j1 rule="para" parents="222 435"/>
      <j2 rule="rewrite" parents="173 2 8 2 173 2 8 2 561 2"/>
    </justification>
  </clause>

  <clause id="4909">
    <literal><![CDATA[
      f(x,f(f(y,y),f(f(x,x),f(y,z)))) = f(x,y)
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(435(a,2),969(a,1,2)),rewrite([173(8),2(7),8(9)])].">
      <j1 rule="para" parents="435 969"/>
      <j2 rule="rewrite" parents="173 2 8"/>
    </justification>
  </clause>

  <clause id="5677">
    <literal><![CDATA[
      f(f(x,x),f(c_0,f(y,f(x,z)))) = f(y,f(y,x))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(435(a,1),1057(a,1,2,2,2)),rewrite([2(3),2(8),173(9,R),561(8,R),2(8),554(8),2(6),173(6),2(5),2106(8),4881(8)]),flip(a)].">
      <j1 rule="para" parents="435 1057"/>
      <j2 rule="rewrite" parents="2 2 173 561 2 554 2 173 2 2106 4881"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="5790">
    <literal><![CDATA[
      f(f(x,y),f(c_0,f(f(y,z),f(y,f(x,x))))) = y
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(10(a,1),1392(a,1,1)),rewrite([173(4,R),2(6),173(10,R),2(12),19(12)])].">
      <j1 rule="para" parents="10 1392"/>
      <j2 rule="rewrite" parents="173 2 173 2 19"/>
    </justification>
  </clause>

  <clause id="7310">
    <literal><![CDATA[
      f(x,f(f(c_0,f(y,f(y,z))),f(f(x,x),f(z,u)))) = f(x,f(y,f(y,z)))
    ]]></literal>
    <justification jstring="[para(591(a,1),4909(a,1,2,2,2)),rewrite([561(5,R),2(4)])].">
      <j1 rule="para" parents="591 4909"/>
      <j2 rule="rewrite" parents="561 2"/>
    </justification>
  </clause>

  <clause id="7374">
    <literal><![CDATA[
      f(f(x,y),f(c_0,f(x,f(z,f(f(y,y),f(f(x,x),f(y,u))))))) = f(x,f(x,y))
    ]]></literal>
    <justification jstring="[para(4909(a,1),647(a,1,1)),rewrite([2(8),4909(17)])].">
      <j1 rule="para" parents="4909 647"/>
      <j2 rule="rewrite" parents="2 4909"/>
    </justification>
  </clause>

  <clause id="7678">
    <literal><![CDATA[
      f(f(c_0,f(x,y)),f(c_0,f(y,z))) = f(z,f(z,f(x,y)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(6(a,1),5677(a,1,2,2,2)),rewrite([561(3,R),2(3),2(5)])].">
      <j1 rule="para" parents="6 5677"/>
      <j2 rule="rewrite" parents="561 2 2"/>
    </justification>
  </clause>

  <clause id="8127">
    <literal><![CDATA[
      f(f(x,x),f(f(y,y),f(x,z))) = f(y,f(y,x))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(4909(a,1),5790(a,1,1)),rewrite([2(8),2(15),191(15),561(11,R),2(11),554(11),2(9),7374(11)]),flip(a)].">
      <j1 rule="para" parents="4909 5790"/>
      <j2 rule="rewrite" parents="2 2 191 561 2 554 2 7374"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="8851">
    <literal><![CDATA[
      f(f(x,f(y,z)),f(z,z)) = f(f(x,x),f(z,z))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(1200(a,1),3310(a,1,2,2,2)),rewrite([2(6),1511(8)]),flip(a)].">
      <j1 rule="para" parents="1200 3310"/>
      <j2 rule="rewrite" parents="2 1511"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="9874">
    <literal><![CDATA[
      f(f(c_0,f(x,y)),f(c_0,f(y,z))) = f(x,f(c_0,f(y,z)))
    ]]></literal>
    <justification jstring="[para(3(a,1),8851(a,1,1)),rewrite([561(3,R),2(3),561(7,R),2(7),561(10,R),2(10)]),flip(a)].">
      <j1 rule="para" parents="3 8851"/>
      <j2 rule="rewrite" parents="561 2 561 2 561 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="10062">
    <literal><![CDATA[
      f(x,f(c_0,f(y,z))) = f(z,f(z,f(x,y)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[back_rewrite(7678),rewrite([9874(7)])].">
      <j1 rule="back_rewrite" parents="7678"/>
      <j2 rule="rewrite" parents="9874"/>
    </justification>
  </clause>

  <clause id="10096">
    <literal><![CDATA[
      f(x,f(y,f(c_0,f(x,z)))) = f(x,f(y,z))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(10062(a,2),8(a,1,2)),rewrite([2(2)])].">
      <j1 rule="para" parents="10062 8"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="10549">
    <literal><![CDATA[
      f(f(c_0,f(x,f(x,y))),f(f(z,z),f(y,u))) = f(x,f(c_0,f(z,f(z,y))))
    ]]></literal>
    <justification jstring="[para(8127(a,1),10062(a,1,2,2)),rewrite([173(13),2(12),2(14),173(15,R),561(13,R),2(12),2(13)]),flip(a)].">
      <j1 rule="para" parents="8127 10062"/>
      <j2 rule="rewrite" parents="173 2 2 173 561 2 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="10722">
    <literal><![CDATA[
      f(x,f(y,f(y,z))) = f(x,f(y,f(x,z)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[back_rewrite(7310),rewrite([10549(8),10096(6)]),flip(a)].">
      <j1 rule="back_rewrite" parents="7310"/>
      <j2 rule="rewrite" parents="10549 10096"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="12283">
    <literal><![CDATA[
      f(x,f(y,f(x,f(x,z)))) = f(x,f(y,z))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(8(a,1),10096(a,1,2,2,2)),rewrite([10096(5)]),flip(a)].">
      <j1 rule="para" parents="8 10096"/>
      <j2 rule="rewrite" parents="10096"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="13418">
    <literal><![CDATA[
      f(x,f(y,f(z,x))) = f(x,f(y,f(y,z)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(10722(a,1),2(a,2)),rewrite([2(3),2(4)]),flip(a)].">
      <j1 rule="para" parents="10722 2"/>
      <j2 rule="rewrite" parents="2 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="14590">
    <literal><![CDATA[
      f(f(x,f(x,y)),f(x,f(x,z))) = f(c_0,f(x,f(y,z)))
    ]]></literal>
    <attribute><![CDATA[
      label(false)
    ]]></attribute>
    <justification jstring="[para(12283(a,1),13418(a,1,2)),rewrite([2(3),581(5)]),flip(a)].">
      <j1 rule="para" parents="12283 13418"/>
      <j2 rule="rewrite" parents="2 581"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="14591">
    <literal><![CDATA[
      $F
    ]]></literal>
    <attribute><![CDATA[
      answer("Sheffer")
    ]]></attribute>
    <justification jstring="[resolve(14590,a,571,a)].">
      <j1 rule="resolve" parents="14590 571"/>
    </justification>
  </clause>

</proof>

</proofs>
