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

<heading><![CDATA[
Prover9 (32) version November-2006, November 2006.
Process 4414 was started by mccune on cleo.thornwood,
Wed Nov 22 12:04:19 2006
The command was "/home/mccune/bin/prover9 -f BA2.in".
]]></heading>

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

<comments><![CDATA[
% Proof 1 at 79.03 (+ 0.11) seconds: "Sheffer".
% Length of proof is 77.
% Level of proof is 25.
% Maximum clause weight is 43.
% Given clauses 305.
]]></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(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>
    <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>
    <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>
    <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="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>
    <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="14">
    <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="16">
    <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(14(7)),xx(a)].">
      <j1 rule="back_rewrite" parents="5"/>
      <j2 rule="rewrite" parents="14"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

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

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

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

  <clause id="22">
    <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="23">
    <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="24">
    <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="33">
    <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="35">
    <literal><![CDATA[
      f(f(x,x),f(f(x,y),f(z,f(x,x)))) = f(z,f(x,x))
    ]]></literal>
    <justification jstring="[para(21(a,1),6(a,1,1)),rewrite(2(5))].">
      <j1 rule="para" parents="21 6"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

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

  <clause id="48">
    <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="56">
    <literal><![CDATA[
      f(x,f(y,f(x,f(y,z)))) = f(x,f(y,z))
    ]]></literal>
    <justification jstring="[para(3(a,1),22(a,1,2,2)),rewrite(2(3))].">
      <j1 rule="para" parents="3 22"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

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

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

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

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

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

  <clause id="164">
    <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>
    <justification jstring="[para(3(a,1),144(a,1,2,2)),rewrite(2(4),2(5)),flip(a)].">
      <j1 rule="para" parents="3 144"/>
      <j2 rule="rewrite" parents="2 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

  <clause id="199">
    <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(16),rewrite(191(27),191(32))].">
      <j1 rule="back_rewrite" parents="16"/>
      <j2 rule="rewrite" parents="191 191"/>
    </justification>
  </clause>

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

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

  <clause id="218">
    <literal><![CDATA[
      f(x,f(f(y,y),f(x,f(y,z)))) = f(x,x)
    ]]></literal>
    <justification jstring="[back_rewrite(190),rewrite(200(6,R),2(4))].">
      <j1 rule="back_rewrite" parents="190"/>
      <j2 rule="rewrite" parents="200 2"/>
    </justification>
  </clause>

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

  <clause id="285">
    <literal><![CDATA[
      f(f(x,f(y,y)),f(f(y,z),f(y,z))) = f(y,z)
    ]]></literal>
    <justification jstring="[para(203(a,2),19(a,1)),rewrite(2(10),35(10),2(7),200(7,R))].">
      <j1 rule="para" parents="203 19"/>
      <j2 rule="rewrite" parents="2 35 2 200"/>
    </justification>
  </clause>

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

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

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

  <clause id="625">
    <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(199),unit_del(a,613)].">
      <j1 rule="back_unit_del" parents="199"/>
      <j2 rule="unit_del" parents="613"/>
    </justification>
  </clause>

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

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

  <clause id="638">
    <literal><![CDATA[
      f(x,f(x,x)) = f(y,f(y,y))
    ]]></literal>
    <justification jstring="[para(613(a,1),36(a,1,1)),rewrite(200(7),2(5),630(5),2(2))].">
      <j1 rule="para" parents="613 36"/>
      <j2 rule="rewrite" parents="200 2 630 2"/>
    </justification>
  </clause>

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

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

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

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

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

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

  <clause id="750">
    <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(625),rewrite(736(11,R),2(7)),flip(a)].">
      <j1 rule="back_rewrite" parents="625"/>
      <j2 rule="rewrite" parents="736 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="767">
    <literal><![CDATA[
      f(f(x,f(x,y)),f(x,f(y,z))) = f(c_0,f(x,f(y,z)))
    ]]></literal>
    <justification jstring="[back_rewrite(164),rewrite(736(5,R),2(4)),flip(a)].">
      <j1 rule="back_rewrite" parents="164"/>
      <j2 rule="rewrite" parents="736 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="784">
    <literal><![CDATA[
      f(f(x,f(x,y)),f(c_0,f(y,z))) = f(y,z)
    ]]></literal>
    <justification jstring="[back_rewrite(285),rewrite(200(2),2(1),736(5,R),2(5))].">
      <j1 rule="back_rewrite" parents="285"/>
      <j2 rule="rewrite" parents="200 2 736 2"/>
    </justification>
  </clause>

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

  <clause id="996">
    <literal><![CDATA[
      f(f(x,f(y,y)),f(c_0,f(y,z))) = f(y,z)
    ]]></literal>
    <justification jstring="[para(11(a,1),880(a,1,2)),rewrite(880(5),2(6),736(6),2(7)),flip(a)].">
      <j1 rule="para" parents="11 880"/>
      <j2 rule="rewrite" parents="880 2 736 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1123">
    <literal><![CDATA[
      f(x,f(f(x,y),f(c_0,f(z,y)))) = f(x,x)
    ]]></literal>
    <justification jstring="[para(37(a,1),218(a,1,2,2,2)),rewrite(736(3,R),2(3),2(5))].">
      <j1 rule="para" parents="37 218"/>
      <j2 rule="rewrite" parents="736 2 2"/>
    </justification>
  </clause>

  <clause id="1324">
    <literal><![CDATA[
      f(x,f(c_0,f(y,z))) = f(x,f(x,f(y,z)))
    ]]></literal>
    <justification jstring="[para(273(a,1),200(a,1,2)),rewrite(200(2),2(1),8(3),2(2),736(3,R),2(3),200(6),2(5),8(7),2(6))].">
      <j1 rule="para" parents="273 200"/>
      <j2 rule="rewrite" parents="200 2 8 2 736 2 200 2 8 2"/>
    </justification>
  </clause>

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

  <clause id="1651">
    <literal><![CDATA[
      f(x,f(y,f(z,f(x,x)))) = f(x,f(x,y))
    ]]></literal>
    <justification jstring="[para(596(a,1),56(a,1,2)),rewrite(200(2),2(1)),flip(a)].">
      <j1 rule="para" parents="596 56"/>
      <j2 rule="rewrite" parents="200 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

  <clause id="2909">
    <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(87(a,1),2895(a,1,2,2,2)),rewrite(736(7,R),2(5),728(8),2(6),2(7))].">
      <j1 rule="para" parents="87 2895"/>
      <j2 rule="rewrite" parents="736 2 728 2 2"/>
    </justification>
  </clause>

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

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

  <clause id="6172">
    <literal><![CDATA[
      f(f(c_0,f(x,y)),f(c_0,f(y,z))) = f(z,f(c_0,f(x,y)))
    ]]></literal>
    <justification jstring="[para(2903(a,1),1651(a,1,2)),rewrite(2(4),2(11),2(12),200(13,R),736(10,R),2(10)),flip(a)].">
      <j1 rule="para" parents="2903 1651"/>
      <j2 rule="rewrite" parents="2 2 2 200 736 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="6880">
    <literal><![CDATA[
      f(f(x,f(y,z)),f(z,z)) = f(f(x,x),f(z,z))
    ]]></literal>
    <justification jstring="[para(3346(a,1),3858(a,1,2,2,2)),rewrite(2(6),2909(8)),flip(a)].">
      <j1 rule="para" parents="3346 3858"/>
      <j2 rule="rewrite" parents="2 2909"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="16698">
    <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),6880(a,1,1)),rewrite(736(3,R),2(3),736(7,R),2(7),736(10,R),2(10)),flip(a)].">
      <j1 rule="para" parents="3 6880"/>
      <j2 rule="rewrite" parents="736 2 736 2 736 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="17176">
    <literal><![CDATA[
      f(x,f(c_0,f(y,z))) = f(z,f(c_0,f(x,y)))
    ]]></literal>
    <justification jstring="[back_rewrite(6172),rewrite(16698(7))].">
      <j1 rule="back_rewrite" parents="6172"/>
      <j2 rule="rewrite" parents="16698"/>
    </justification>
  </clause>

  <clause id="17429">
    <literal><![CDATA[
      f(x,f(y,f(c_0,f(x,z)))) = f(x,f(y,z))
    ]]></literal>
    <justification jstring="[para(17176(a,2),1324(a,2,2)),rewrite(880(5),2(4)),flip(a)].">
      <j1 rule="para" parents="17176 1324"/>
      <j2 rule="rewrite" parents="880 2"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

  <clause id="23113">
    <literal><![CDATA[
      f(f(x,f(x,y)),f(x,f(x,z))) = f(c_0,f(x,f(y,z)))
    ]]></literal>
    <justification jstring="[para(19770(a,1),22246(a,1,2)),rewrite(2(3),767(5)),flip(a)].">
      <j1 rule="para" parents="19770 22246"/>
      <j2 rule="rewrite" parents="2 767"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

</proof>

</proofs>
