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

<heading><![CDATA[
Prover9 (32) version April-2007, April 2007.
Process 26506 was started by mccune on cleo,
Fri Apr 13 09:15:33 2007
The command was "/home/mccune/bin/prover9 -f bw.in".
]]></heading>

<proof number="1" length="15" max_count="76">

<comments><![CDATA[
% Proof 1 at 1.12 (+ 0.02) seconds: fixed_point_combinator.
% Length of proof is 15.
% Level of proof is 6.
% Maximum clause weight is 76.
% Given clauses 64.
]]></comments>

  <clause id="1" type="goal">
    <literal><![CDATA[
      (exists Q all x a(Q,x) = a(x,a(Q,x)))
    ]]></literal>
    <attribute><![CDATA[
      label(fixed_point_combinator)
    ]]></attribute>
    <attribute><![CDATA[
      label(goal)
    ]]></attribute>
    <justification jstring="[goal].">
      <j1 rule="goal"/>
    </justification>
  </clause>

  <clause id="2" type="assumption">
    <literal><![CDATA[
      a(a(a(B,x),y),z) = a(x,a(y,z))
    ]]></literal>
    <attribute><![CDATA[
      label(B)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

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

  <clause id="4" type="deny">
    <literal><![CDATA[
      a(x,f1(x)) != a(f1(x),a(x,f1(x)))
    ]]></literal>
    <attribute><![CDATA[
      label(fixed_point_combinator)
    ]]></attribute>
    <attribute><![CDATA[
      answer(fixed_point_combinator)
    ]]></attribute>
    <justification jstring="[deny(1)].">
      <j1 rule="deny" parents="1"/>
    </justification>
  </clause>

  <clause id="5">
    <literal><![CDATA[
      a(f1(x),a(x,f1(x))) != a(x,f1(x))
    ]]></literal>
    <attribute><![CDATA[
      answer(fixed_point_combinator)
    ]]></attribute>
    <justification jstring="[copy(4),flip(a)].">
      <j1 rule="copy" parents="4"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

  <clause id="12">
    <literal><![CDATA[
      a(f1(a(a(B,x),y)),a(x,a(y,f1(a(a(B,x),y))))) != a(x,a(y,f1(a(a(B,x),y))))
    ]]></literal>
    <attribute><![CDATA[
      answer(fixed_point_combinator)
    ]]></attribute>
    <justification jstring="[para(2(a,1),5(a,1,2)),rewrite(2(19))].">
      <j1 rule="para" parents="2 5"/>
      <j2 rule="rewrite" parents="2"/>
    </justification>
  </clause>

  <clause id="21">
    <literal><![CDATA[
      a(f1(a(a(B,x),a(a(W,B),y))),a(x,a(y,a(y,f1(a(a(B,x),a(a(W,B),y))))))) != a(x,a(y,a(y,f1(a(a(B,x),a(a(W,B),y))))))
    ]]></literal>
    <attribute><![CDATA[
      answer(fixed_point_combinator)
    ]]></attribute>
    <justification jstring="[para(6(a,1),12(a,1,2,2)),rewrite(6(33))].">
      <j1 rule="para" parents="6 12"/>
      <j2 rule="rewrite" parents="6"/>
    </justification>
  </clause>

  <clause id="34">
    <literal><![CDATA[
      a(a(a(a(W,a(B,B)),x),y),z) = a(a(x,x),a(y,z))
    ]]></literal>
    <justification jstring="[para(7(a,2),2(a,1,1,1))].">
      <j1 rule="para" parents="7 2"/>
    </justification>
  </clause>

  <clause id="35">
    <literal><![CDATA[
      a(a(a(W,a(B,a(B,x))),y),z) = a(x,a(a(y,y),z))
    ]]></literal>
    <justification jstring="[para(7(a,2),2(a,1,1))].">
      <j1 rule="para" parents="7 2"/>
    </justification>
  </clause>

  <clause id="2798">
    <literal><![CDATA[
      a(f1(a(a(B,a(a(a(W,a(B,B)),x),y)),a(a(W,B),z))),a(a(x,x),a(y,a(z,a(z,f1(a(a(B,a(a(a(W,a(B,B)),x),y)),a(a(W,B),z)))))))) != a(a(x,x),a(y,a(z,a(z,f1(a(a(B,a(a(a(W,a(B,B)),x),y)),a(a(W,B),z)))))))
    ]]></literal>
    <attribute><![CDATA[
      answer(fixed_point_combinator)
    ]]></attribute>
    <justification jstring="[para(34(a,1),21(a,1,2)),rewrite(34(61))].">
      <j1 rule="para" parents="34 21"/>
      <j2 rule="rewrite" parents="34"/>
    </justification>
  </clause>

  <clause id="2849">
    <literal><![CDATA[
      a(x,a(a(W,W),a(W,a(B,a(B,x))))) = a(a(W,W),a(W,a(B,a(B,x))))
    ]]></literal>
    <justification jstring="[para(35(a,1),10(a,2)),rewrite(10(30,R)),flip(a)].">
      <j1 rule="para" parents="35 10"/>
      <j2 rule="rewrite" parents="10"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="2850">
    <literal><![CDATA[
      $F
    ]]></literal>
    <attribute><![CDATA[
      answer(fixed_point_combinator)
    ]]></attribute>
    <justification jstring="[resolve(2849,a,2798,a)].">
      <j1 rule="resolve" parents="2849 2798"/>
    </justification>
  </clause>

</proof>

</proofs>
