<?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="2">

<source>SET668+3.out</source>

<heading><![CDATA[
FOF-Prover9 (32) version November-2006, November 2006.
Process 3794 was started by mccune on cleo.thornwood,
Wed Nov 22 11:23:45 2006
The command was "/home/mccune/bin/fof-prover9 -f SET668+3.in".
]]></heading>

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

<comments><![CDATA[
% Proof 1 at 0.16 (+ 0.00) seconds.
% Length of proof is 39.
% Level of proof is 8.
% Maximum clause weight is 24.
% Given clauses 283.
]]></comments>

  <clause id="11" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      -subset(B,A)
    ]]></literal>
    <literal><![CDATA[
      B = A
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="12" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(D,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      -subset(identity_relation_of(C),D)
    ]]></literal>
    <literal><![CDATA[
      subset(C,domain(A,B,D))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="22" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      member(f2(A,B),A)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="23" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      -member(f2(A,B),B)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="45" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      ilf_type(B,member_type(power_set(A)))
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,subset_type(A))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="52" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,set_type)
    ]]></literal>
    <literal><![CDATA[
      -member(C,A)
    ]]></literal>
    <literal><![CDATA[
      member(C,B)
    ]]></literal>
    <literal><![CDATA[
      -member(A,power_set(B))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="53" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -empty(power_set(A))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="56" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      empty(B)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      member(A,B)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(A,member_type(B))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="75" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      domain_of(C) = domain(A,B,C)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="76">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      domain(A,B,C) = domain_of(C)
    ]]></literal>
    <justification jstring="[copy(75),flip(d)].">
      <j1 rule="copy" parents="75"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="77" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      ilf_type(domain(A,B,C),subset_type(A))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="81" type="assumption">
    <literal><![CDATA[
      ilf_type(A,set_type)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="82" type="assumption">
    <literal><![CDATA[
      ilf_type(c4,relation_type(c3,c2))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="83" type="assumption">
    <literal><![CDATA[
      subset(identity_relation_of(c3),c4)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="84" type="assumption">
    <literal><![CDATA[
      domain(c3,c2,c4) != c3
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="156">
    <literal><![CDATA[
      -ilf_type(A,relation_type(B,C))
    ]]></literal>
    <literal><![CDATA[
      ilf_type(domain(B,C,A),subset_type(B))
    ]]></literal>
    <justification jstring="[back_unit_del(77),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="77"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="157">
    <literal><![CDATA[
      -ilf_type(A,relation_type(B,C))
    ]]></literal>
    <literal><![CDATA[
      domain(B,C,A) = domain_of(A)
    ]]></literal>
    <justification jstring="[back_unit_del(76),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="76"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="164">
    <literal><![CDATA[
      empty(A)
    ]]></literal>
    <literal><![CDATA[
      member(B,A)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,member_type(A))
    ]]></literal>
    <justification jstring="[back_unit_del(56),unit_del(a,81),unit_del(c,81)].">
      <j1 rule="back_unit_del" parents="56"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="166">
    <literal><![CDATA[
      -empty(power_set(A))
    ]]></literal>
    <justification jstring="[back_unit_del(53),unit_del(a,81)].">
      <j1 rule="back_unit_del" parents="53"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="167">
    <literal><![CDATA[
      -member(A,B)
    ]]></literal>
    <literal><![CDATA[
      member(A,C)
    ]]></literal>
    <literal><![CDATA[
      -member(B,power_set(C))
    ]]></literal>
    <justification jstring="[back_unit_del(52),unit_del(a,81),unit_del(b,81),unit_del(c,81)].">
      <j1 rule="back_unit_del" parents="52"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="171">
    <literal><![CDATA[
      ilf_type(A,member_type(power_set(B)))
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(A,subset_type(B))
    ]]></literal>
    <justification jstring="[back_unit_del(45),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="45"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="181">
    <literal><![CDATA[
      subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      -member(f2(A,B),B)
    ]]></literal>
    <justification jstring="[back_unit_del(23),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="23"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="182">
    <literal><![CDATA[
      subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      member(f2(A,B),A)
    ]]></literal>
    <justification jstring="[back_unit_del(22),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="22"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="191">
    <literal><![CDATA[
      -ilf_type(A,relation_type(B,C))
    ]]></literal>
    <literal><![CDATA[
      -subset(identity_relation_of(D),A)
    ]]></literal>
    <literal><![CDATA[
      subset(D,domain(B,C,A))
    ]]></literal>
    <justification jstring="[back_unit_del(12),unit_del(a,81),unit_del(b,81),unit_del(c,81)].">
      <j1 rule="back_unit_del" parents="12"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="192">
    <literal><![CDATA[
      -subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      -subset(B,A)
    ]]></literal>
    <literal><![CDATA[
      B = A
    ]]></literal>
    <justification jstring="[back_unit_del(11),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="11"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="199">
    <literal><![CDATA[
      ilf_type(domain(c3,c2,c4),subset_type(c3))
    ]]></literal>
    <justification jstring="[resolve(156,a,82,a)].">
      <j1 rule="resolve" parents="156 82"/>
    </justification>
  </clause>

  <clause id="200">
    <literal><![CDATA[
      domain(c3,c2,c4) = domain_of(c4)
    ]]></literal>
    <justification jstring="[resolve(157,a,82,a)].">
      <j1 rule="resolve" parents="157 82"/>
    </justification>
  </clause>

  <clause id="201">
    <literal><![CDATA[
      ilf_type(domain_of(c4),subset_type(c3))
    ]]></literal>
    <justification jstring="[back_rewrite(199),rewrite(200(4))].">
      <j1 rule="back_rewrite" parents="199"/>
      <j2 rule="rewrite" parents="200"/>
    </justification>
  </clause>

  <clause id="202">
    <literal><![CDATA[
      domain_of(c4) != c3
    ]]></literal>
    <justification jstring="[back_rewrite(84),rewrite(200(4))].">
      <j1 rule="back_rewrite" parents="84"/>
      <j2 rule="rewrite" parents="200"/>
    </justification>
  </clause>

  <clause id="255">
    <literal><![CDATA[
      -ilf_type(c4,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      subset(c3,domain(A,B,c4))
    ]]></literal>
    <justification jstring="[resolve(191,b,83,a)].">
      <j1 rule="resolve" parents="191 83"/>
    </justification>
  </clause>

  <clause id="256">
    <literal><![CDATA[
      -subset(A,B)
    ]]></literal>
    <literal><![CDATA[
      A = B
    ]]></literal>
    <literal><![CDATA[
      member(f2(B,A),B)
    ]]></literal>
    <justification jstring="[resolve(192,a,182,a)].">
      <j1 rule="resolve" parents="192 182"/>
    </justification>
  </clause>

  <clause id="286">
    <literal><![CDATA[
      ilf_type(domain_of(c4),member_type(power_set(c3)))
    ]]></literal>
    <justification jstring="[resolve(201,a,171,b)].">
      <j1 rule="resolve" parents="201 171"/>
    </justification>
  </clause>

  <clause id="486">
    <literal><![CDATA[
      member(domain_of(c4),power_set(c3))
    ]]></literal>
    <justification jstring="[resolve(286,a,164,c),unit_del(a,166)].">
      <j1 rule="resolve" parents="286 164"/>
      <j2 rule="unit_del" parents="166"/>
    </justification>
  </clause>

  <clause id="499">
    <literal><![CDATA[
      -member(A,domain_of(c4))
    ]]></literal>
    <literal><![CDATA[
      member(A,c3)
    ]]></literal>
    <justification jstring="[resolve(486,a,167,c)].">
      <j1 rule="resolve" parents="486 167"/>
    </justification>
  </clause>

  <clause id="1735">
    <literal><![CDATA[
      subset(c3,domain_of(c4))
    ]]></literal>
    <justification jstring="[resolve(255,a,82,a),rewrite(200(5))].">
      <j1 rule="resolve" parents="255 82"/>
      <j2 rule="rewrite" parents="200"/>
    </justification>
  </clause>

  <clause id="1770">
    <literal><![CDATA[
      -subset(domain_of(c4),c3)
    ]]></literal>
    <justification jstring="[resolve(1735,a,192,b),flip(b),unit_del(b,202)].">
      <j1 rule="resolve" parents="1735 192"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="202"/>
    </justification>
  </clause>

  <clause id="1781">
    <literal><![CDATA[
      member(f2(domain_of(c4),c3),domain_of(c4))
    ]]></literal>
    <justification jstring="[resolve(256,a,1735,a),flip(a),unit_del(a,202)].">
      <j1 rule="resolve" parents="256 1735"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="202"/>
    </justification>
  </clause>

  <clause id="1784">
    <literal><![CDATA[
      -member(f2(domain_of(c4),c3),c3)
    ]]></literal>
    <justification jstring="[ur(181,a,1770,a)].">
      <j1 rule="ur" parents="181 1770"/>
    </justification>
  </clause>

  <clause id="1785">
    <literal><![CDATA[
      $F
    ]]></literal>
    <justification jstring="[ur(499,b,1784,a),unit_del(a,1781)].">
      <j1 rule="ur" parents="499 1784"/>
      <j2 rule="unit_del" parents="1781"/>
    </justification>
  </clause>

</proof>

<proof number="2" length="13" max_count="24">

<comments><![CDATA[
% Proof 1 at 0.13 (+ 0.00) seconds.
% Length of proof is 13.
% Level of proof is 5.
% Maximum clause weight is 24.
% Given clauses 261.
]]></comments>

  <clause id="13" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(D,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      -subset(identity_relation_of(C),D)
    ]]></literal>
    <literal><![CDATA[
      subset(C,range(A,B,D))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="78" type="assumption">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      range_of(C) = range(A,B,C)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="79">
    <literal><![CDATA[
      -ilf_type(A,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(B,set_type)
    ]]></literal>
    <literal><![CDATA[
      -ilf_type(C,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      range(A,B,C) = range_of(C)
    ]]></literal>
    <justification jstring="[copy(78),flip(d)].">
      <j1 rule="copy" parents="78"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="81" type="assumption">
    <literal><![CDATA[
      ilf_type(A,set_type)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="82" type="assumption">
    <literal><![CDATA[
      ilf_type(c4,relation_type(c3,c2))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="83" type="assumption">
    <literal><![CDATA[
      subset(identity_relation_of(c3),c4)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="84" type="assumption">
    <literal><![CDATA[
      -subset(c3,range(c3,c2,c4))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="155">
    <literal><![CDATA[
      -ilf_type(A,relation_type(B,C))
    ]]></literal>
    <literal><![CDATA[
      range(B,C,A) = range_of(A)
    ]]></literal>
    <justification jstring="[back_unit_del(79),unit_del(a,81),unit_del(b,81)].">
      <j1 rule="back_unit_del" parents="79"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="190">
    <literal><![CDATA[
      -ilf_type(A,relation_type(B,C))
    ]]></literal>
    <literal><![CDATA[
      -subset(identity_relation_of(D),A)
    ]]></literal>
    <literal><![CDATA[
      subset(D,range(B,C,A))
    ]]></literal>
    <justification jstring="[back_unit_del(13),unit_del(a,81),unit_del(b,81),unit_del(c,81)].">
      <j1 rule="back_unit_del" parents="13"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
      <j2 rule="unit_del" parents="81"/>
    </justification>
  </clause>

  <clause id="197">
    <literal><![CDATA[
      range(c3,c2,c4) = range_of(c4)
    ]]></literal>
    <justification jstring="[resolve(155,a,82,a)].">
      <j1 rule="resolve" parents="155 82"/>
    </justification>
  </clause>

  <clause id="199">
    <literal><![CDATA[
      -subset(c3,range_of(c4))
    ]]></literal>
    <justification jstring="[back_rewrite(84),rewrite(197(5))].">
      <j1 rule="back_rewrite" parents="84"/>
      <j2 rule="rewrite" parents="197"/>
    </justification>
  </clause>

  <clause id="252">
    <literal><![CDATA[
      -ilf_type(c4,relation_type(A,B))
    ]]></literal>
    <literal><![CDATA[
      subset(c3,range(A,B,c4))
    ]]></literal>
    <justification jstring="[resolve(190,b,83,a)].">
      <j1 rule="resolve" parents="190 83"/>
    </justification>
  </clause>

  <clause id="1510">
    <literal><![CDATA[
      $F
    ]]></literal>
    <justification jstring="[resolve(252,a,82,a),rewrite(197(5)),unit_del(a,199)].">
      <j1 rule="resolve" parents="252 82"/>
      <j2 rule="rewrite" parents="197"/>
      <j2 rule="unit_del" parents="199"/>
    </justification>
  </clause>

</proof>

</proofs>
