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

<heading><![CDATA[
Prover9 (32) version August-2006A, August 2006.
Process 11452 was started by mccune on cleo.thornwood,
Sat Aug 12 21:01:21 2006
The command was "/home/mccune/bin/prover9 -f head.in t2_23.in".
]]></heading>

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

<comments><![CDATA[
% Proof 1 at 10.46 (+ 0.04) seconds.
% Length of proof is 109.
% Level of proof is 26.
% Maximum clause weight is 22.
% Given clauses 603.
]]></comments>

  <clause id="1">
    <literal><![CDATA[
      (all x all y all z (A(x,y,z) <-> x <= y & y <= z | z <= y & y <= x))
    ]]></literal>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="2">
    <literal><![CDATA[
      (all x all y all z (B(x,y,z) <-> (x ^ y) v (y ^ z) = y & (x v y) ^ (y v z) = y))
    ]]></literal>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="5">
    <literal><![CDATA[
      (all x all y all z (D(x,y,z) <-> x ^ z <= y & y <= x v z))
    ]]></literal>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="6">
    <literal><![CDATA[
      (all x all y (x <= y <-> x ^ y = x))
    ]]></literal>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="10">
    <literal><![CDATA[
      -A(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      y <= z
    ]]></literal>
    <literal><![CDATA[
      z <= y
    ]]></literal>
    <justification jstring="[clausify(1)].">
      <j1 rule="clausify" parents="1"/>
    </justification>
  </clause>

  <clause id="11">
    <literal><![CDATA[
      -A(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      y <= z
    ]]></literal>
    <literal><![CDATA[
      y <= x
    ]]></literal>
    <justification jstring="[clausify(1)].">
      <j1 rule="clausify" parents="1"/>
    </justification>
  </clause>

  <clause id="13">
    <literal><![CDATA[
      -D(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      A(x,y,z)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="20">
    <literal><![CDATA[
      D(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      -(x ^ z <= y)
    ]]></literal>
    <literal><![CDATA[
      -(y <= x v z)
    ]]></literal>
    <justification jstring="[clausify(5)].">
      <j1 rule="clausify" parents="5"/>
    </justification>
  </clause>

  <clause id="25">
    <literal><![CDATA[
      -D(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      y <= z
    ]]></literal>
    <literal><![CDATA[
      z <= y
    ]]></literal>
    <justification jstring="[resolve(13,b,10,a)].">
      <j1 rule="resolve" parents="13 10"/>
    </justification>
  </clause>

  <clause id="26">
    <literal><![CDATA[
      -D(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      y <= z
    ]]></literal>
    <literal><![CDATA[
      y <= x
    ]]></literal>
    <justification jstring="[resolve(13,b,11,a)].">
      <j1 rule="resolve" parents="13 11"/>
    </justification>
  </clause>

  <clause id="27">
    <literal><![CDATA[
      x ^ y = y ^ x
    ]]></literal>
    <attribute><![CDATA[
      label("commutativity_meet")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="28">
    <literal><![CDATA[
      x v y = y v x
    ]]></literal>
    <attribute><![CDATA[
      label("commutativity_join")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="29">
    <literal><![CDATA[
      (x ^ y) ^ z = x ^ (y ^ z)
    ]]></literal>
    <attribute><![CDATA[
      label("associativity_meet")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="30">
    <literal><![CDATA[
      (x v y) v z = x v (y v z)
    ]]></literal>
    <attribute><![CDATA[
      label("associativity_join")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="31">
    <literal><![CDATA[
      (x v y) ^ x = x
    ]]></literal>
    <attribute><![CDATA[
      label("absorption_1")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="32">
    <literal><![CDATA[
      x ^ (x v y) = x
    ]]></literal>
    <justification jstring="[copy(31),rewrite(27(2))].">
      <j1 rule="copy" parents="31"/>
      <j2 rule="rewrite" parents="27"/>
    </justification>
  </clause>

  <clause id="33">
    <literal><![CDATA[
      (x ^ y) v x = x
    ]]></literal>
    <attribute><![CDATA[
      label("absorption_2")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="34">
    <literal><![CDATA[
      x v (x ^ y) = x
    ]]></literal>
    <justification jstring="[copy(33),rewrite(28(2))].">
      <j1 rule="copy" parents="33"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="35">
    <literal><![CDATA[
      -B(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      (x ^ y) v (y ^ z) = y
    ]]></literal>
    <justification jstring="[clausify(2)].">
      <j1 rule="clausify" parents="2"/>
    </justification>
  </clause>

  <clause id="36">
    <literal><![CDATA[
      -B(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      (x v y) ^ (y v z) = y
    ]]></literal>
    <justification jstring="[clausify(2)].">
      <j1 rule="clausify" parents="2"/>
    </justification>
  </clause>

  <clause id="37">
    <literal><![CDATA[
      B(x,y,z)
    ]]></literal>
    <literal><![CDATA[
      (x ^ y) v (y ^ z) != y
    ]]></literal>
    <literal><![CDATA[
      (x v y) ^ (y v z) != y
    ]]></literal>
    <justification jstring="[clausify(2)].">
      <j1 rule="clausify" parents="2"/>
    </justification>
  </clause>

  <clause id="38">
    <literal><![CDATA[
      -(x <= y)
    ]]></literal>
    <literal><![CDATA[
      x ^ y = x
    ]]></literal>
    <justification jstring="[clausify(6)].">
      <j1 rule="clausify" parents="6"/>
    </justification>
  </clause>

  <clause id="39">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      x ^ y != x
    ]]></literal>
    <justification jstring="[clausify(6)].">
      <j1 rule="clausify" parents="6"/>
    </justification>
  </clause>

  <clause id="40">
    <literal><![CDATA[
      B(ca,cx,cb)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="41">
    <literal><![CDATA[
      B(cx,cb,cy)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="42">
    <literal><![CDATA[
      cx != cb
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="43">
    <literal><![CDATA[
      -B(ca,cb,cy)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="46">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      y <= x
    ]]></literal>
    <literal><![CDATA[
      -(z ^ y <= x)
    ]]></literal>
    <literal><![CDATA[
      -(x <= z v y)
    ]]></literal>
    <justification jstring="[resolve(25,a,20,a)].">
      <j1 rule="resolve" parents="25 20"/>
    </justification>
  </clause>

  <clause id="47">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      x <= z
    ]]></literal>
    <literal><![CDATA[
      -(z ^ y <= x)
    ]]></literal>
    <literal><![CDATA[
      -(x <= z v y)
    ]]></literal>
    <justification jstring="[resolve(26,a,20,a)].">
      <j1 rule="resolve" parents="26 20"/>
    </justification>
  </clause>

  <clause id="53">
    <literal><![CDATA[
      x ^ (y ^ z) = y ^ (x ^ z)
    ]]></literal>
    <justification jstring="[para(27(a,1),29(a,1,1)),rewrite(29(2))].">
      <j1 rule="para" parents="27 29"/>
      <j2 rule="rewrite" parents="29"/>
    </justification>
  </clause>

  <clause id="55">
    <literal><![CDATA[
      x v (y v z) = y v (x v z)
    ]]></literal>
    <justification jstring="[para(28(a,1),30(a,1,1)),rewrite(30(2))].">
      <j1 rule="para" parents="28 30"/>
      <j2 rule="rewrite" parents="30"/>
    </justification>
  </clause>

  <clause id="56">
    <literal><![CDATA[
      x ^ (y v x) = x
    ]]></literal>
    <justification jstring="[para(28(a,1),32(a,1,2))].">
      <j1 rule="para" parents="28 32"/>
    </justification>
  </clause>

  <clause id="57">
    <literal><![CDATA[
      x ^ ((x v y) ^ z) = x ^ z
    ]]></literal>
    <justification jstring="[para(32(a,1),29(a,1,1)),flip(a)].">
      <j1 rule="para" parents="32 29"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="62">
    <literal><![CDATA[
      x v ((x ^ y) v z) = x v z
    ]]></literal>
    <justification jstring="[para(34(a,1),30(a,1,1)),flip(a)].">
      <j1 rule="para" parents="34 30"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="64">
    <literal><![CDATA[
      x ^ x = x
    ]]></literal>
    <justification jstring="[para(34(a,1),32(a,1,2))].">
      <j1 rule="para" parents="34 32"/>
    </justification>
  </clause>

  <clause id="65">
    <literal><![CDATA[
      x v x = x
    ]]></literal>
    <justification jstring="[para(32(a,1),34(a,1,2))].">
      <j1 rule="para" parents="32 34"/>
    </justification>
  </clause>

  <clause id="77">
    <literal><![CDATA[
      B(x,y,y v z)
    ]]></literal>
    <literal><![CDATA[
      (x v y) ^ (y v (y v z)) != y
    ]]></literal>
    <justification jstring="[para(32(a,1),37(b,1,2)),rewrite(28(4),60(4)),xx(b)].">
      <j1 rule="para" parents="32 37"/>
      <j2 rule="rewrite" parents="28 60"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

  <clause id="79">
    <literal><![CDATA[
      B(x,y,y ^ z)
    ]]></literal>
    <literal><![CDATA[
      (x ^ y) v (y ^ (y ^ z)) != y
    ]]></literal>
    <justification jstring="[para(34(a,1),37(c,1,2)),rewrite(27(9),56(9)),xx(c)].">
      <j1 rule="para" parents="34 37"/>
      <j2 rule="rewrite" parents="27 56"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

  <clause id="80">
    <literal><![CDATA[
      x <= x v y
    ]]></literal>
    <justification jstring="[hyper(39,b,32,a)].">
      <j1 rule="hyper" parents="39 32"/>
    </justification>
  </clause>

  <clause id="84">
    <literal><![CDATA[
      (cb v cx) ^ (cx v ca) = cx
    ]]></literal>
    <justification jstring="[hyper(36,a,40,a),rewrite(28(3),28(6),27(7))].">
      <j1 rule="hyper" parents="36 40"/>
      <j2 rule="rewrite" parents="28 28 27"/>
    </justification>
  </clause>

  <clause id="85">
    <literal><![CDATA[
      (cb ^ cx) v (cx ^ ca) = cx
    ]]></literal>
    <justification jstring="[hyper(35,a,40,a),rewrite(27(3),27(6),28(7))].">
      <j1 rule="hyper" parents="35 40"/>
      <j2 rule="rewrite" parents="27 27 28"/>
    </justification>
  </clause>

  <clause id="86">
    <literal><![CDATA[
      (cb v cx) ^ (cb v cy) = cb
    ]]></literal>
    <justification jstring="[hyper(36,a,41,a),rewrite(28(3))].">
      <j1 rule="hyper" parents="36 41"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="87">
    <literal><![CDATA[
      (cb ^ cx) v (cb ^ cy) = cb
    ]]></literal>
    <justification jstring="[hyper(35,a,41,a),rewrite(27(3))].">
      <j1 rule="hyper" parents="35 41"/>
      <j2 rule="rewrite" parents="27"/>
    </justification>
  </clause>

  <clause id="111">
    <literal><![CDATA[
      x ^ (x ^ y) = x ^ y
    ]]></literal>
    <justification jstring="[para(64(a,1),29(a,1,1)),flip(a)].">
      <j1 rule="para" parents="64 29"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="116">
    <literal><![CDATA[
      B(x,y,y ^ z)
    ]]></literal>
    <literal><![CDATA[
      (x ^ y) v (y ^ z) != y
    ]]></literal>
    <justification jstring="[back_rewrite(79),rewrite(111(5))].">
      <j1 rule="back_rewrite" parents="79"/>
      <j2 rule="rewrite" parents="111"/>
    </justification>
  </clause>

  <clause id="127">
    <literal><![CDATA[
      x v (x v y) = x v y
    ]]></literal>
    <justification jstring="[para(65(a,1),30(a,1,1)),flip(a)].">
      <j1 rule="para" parents="65 30"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="130">
    <literal><![CDATA[
      B(x,y,y v z)
    ]]></literal>
    <literal><![CDATA[
      (x v y) ^ (y v z) != y
    ]]></literal>
    <justification jstring="[back_rewrite(77),rewrite(127(5))].">
      <j1 rule="back_rewrite" parents="77"/>
      <j2 rule="rewrite" parents="127"/>
    </justification>
  </clause>

  <clause id="132">
    <literal><![CDATA[
      x ^ (y v (x v z)) = x
    ]]></literal>
    <justification jstring="[para(55(a,1),32(a,1,2))].">
      <j1 rule="para" parents="55 32"/>
    </justification>
  </clause>

  <clause id="140">
    <literal><![CDATA[
      x <= y v x
    ]]></literal>
    <justification jstring="[para(28(a,1),80(a,2))].">
      <j1 rule="para" parents="28 80"/>
    </justification>
  </clause>

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

  <clause id="145">
    <literal><![CDATA[
      x v y <= x v (z v y)
    ]]></literal>
    <justification jstring="[para(55(a,1),140(a,2))].">
      <j1 rule="para" parents="55 140"/>
    </justification>
  </clause>

  <clause id="146">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      y <= x
    ]]></literal>
    <justification jstring="[hyper(46,c,144,a,d,80,a)].">
      <j1 rule="hyper" parents="46 144 80"/>
    </justification>
  </clause>

  <clause id="147">
    <literal><![CDATA[
      x ^ y <= y
    ]]></literal>
    <justification jstring="[para(27(a,1),144(a,1))].">
      <j1 rule="para" parents="27 144"/>
    </justification>
  </clause>

  <clause id="150">
    <literal><![CDATA[
      x ^ (y ^ z) <= z
    ]]></literal>
    <justification jstring="[para(29(a,1),147(a,1))].">
      <j1 rule="para" parents="29 147"/>
    </justification>
  </clause>

  <clause id="152">
    <literal><![CDATA[
      x ^ ((y v x) ^ z) = x ^ z
    ]]></literal>
    <justification jstring="[para(56(a,1),29(a,1,1)),flip(a)].">
      <j1 rule="para" parents="56 29"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="158">
    <literal><![CDATA[
      x ^ (y ^ (z v x)) = y ^ x
    ]]></literal>
    <justification jstring="[para(56(a,1),53(a,1,2)),flip(a)].">
      <j1 rule="para" parents="56 53"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="172">
    <literal><![CDATA[
      x ^ y = x
    ]]></literal>
    <literal><![CDATA[
      y <= x
    ]]></literal>
    <justification jstring="[hyper(38,a,146,a)].">
      <j1 rule="hyper" parents="38 146"/>
    </justification>
  </clause>

  <clause id="180">
    <literal><![CDATA[
      x v (y v (z ^ x)) = y v x
    ]]></literal>
    <justification jstring="[para(60(a,1),55(a,1,2)),flip(a)].">
      <j1 rule="para" parents="60 55"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="203">
    <literal><![CDATA[
      (x ^ y) v ((x v z) ^ y) = (x v z) ^ y
    ]]></literal>
    <justification jstring="[para(57(a,1),60(a,1,2)),rewrite(28(4))].">
      <j1 rule="para" parents="57 60"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="269">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      x ^ y = y
    ]]></literal>
    <justification jstring="[para(172(a,1),27(a,1)),flip(b)].">
      <j1 rule="para" parents="172 27"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="279">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      x v y = x
    ]]></literal>
    <justification jstring="[para(172(a,1),60(a,1,2))].">
      <j1 rule="para" parents="172 60"/>
    </justification>
  </clause>

  <clause id="283">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      z ^ y <= x
    ]]></literal>
    <justification jstring="[para(172(a,1),150(a,1,2))].">
      <j1 rule="para" parents="172 150"/>
    </justification>
  </clause>

  <clause id="339">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      y v x = x
    ]]></literal>
    <justification jstring="[para(279(b,1),28(a,1)),flip(b)].">
      <j1 rule="para" parents="279 28"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="581">
    <literal><![CDATA[
      cb ^ (cx v ca) = cb ^ cx
    ]]></literal>
    <justification jstring="[para(84(a,1),57(a,1,2)),flip(a)].">
      <j1 rule="para" parents="84 57"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="638">
    <literal><![CDATA[
      cb v (cx ^ ca) = cb v cx
    ]]></literal>
    <justification jstring="[para(85(a,1),62(a,1,2)),flip(a)].">
      <j1 rule="para" parents="85 62"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="651">
    <literal><![CDATA[
      cb v cx = cb
    ]]></literal>
    <literal><![CDATA[
      cb v cy <= cb v cx
    ]]></literal>
    <justification jstring="[para(86(a,1),172(a,1)),flip(a)].">
      <j1 rule="para" parents="86 172"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="803">
    <literal><![CDATA[
      x v (y ^ z) <= x v z
    ]]></literal>
    <justification jstring="[para(60(a,1),145(a,2,2))].">
      <j1 rule="para" parents="60 145"/>
    </justification>
  </clause>

  <clause id="1527">
    <literal><![CDATA[
      cx <= ca v (cb ^ cx)
    ]]></literal>
    <justification jstring="[para(85(a,1),803(a,1)),rewrite(28(6))].">
      <j1 rule="para" parents="85 803"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="1529">
    <literal><![CDATA[
      cb <= cy v (cb ^ cx)
    ]]></literal>
    <justification jstring="[para(87(a,1),803(a,1)),rewrite(28(6))].">
      <j1 rule="para" parents="87 803"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="1533">
    <literal><![CDATA[
      cb v cx <= cb v ca
    ]]></literal>
    <justification jstring="[para(638(a,1),803(a,1))].">
      <j1 rule="para" parents="638 803"/>
    </justification>
  </clause>

  <clause id="1540">
    <literal><![CDATA[
      cx <= cb
    ]]></literal>
    <literal><![CDATA[
      cx <= cb v ca
    ]]></literal>
    <justification jstring="[para(172(a,1),1527(a,2,2)),rewrite(28(7))].">
      <j1 rule="para" parents="172 1527"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="1547">
    <literal><![CDATA[
      cb <= cb ^ cx
    ]]></literal>
    <literal><![CDATA[
      cb <= cy
    ]]></literal>
    <justification jstring="[hyper(47,c,283,b,d,1529,a),merge(c)].">
      <j1 rule="hyper" parents="47 283 1529"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="1559">
    <literal><![CDATA[
      (cb v cx) ^ (cb v ca) = cb v cx
    ]]></literal>
    <justification jstring="[hyper(38,a,1533,a)].">
      <j1 rule="hyper" parents="38 1533"/>
    </justification>
  </clause>

  <clause id="1583">
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <literal><![CDATA[
      cx <= cb
    ]]></literal>
    <justification jstring="[para(279(b,1),1540(b,2)),merge(c)].">
      <j1 rule="para" parents="279 1540"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="1584">
    <literal><![CDATA[
      cb ^ cx = cx
    ]]></literal>
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <justification jstring="[hyper(38,a,1583,b),rewrite(27(3))].">
      <j1 rule="hyper" parents="38 1583"/>
      <j2 rule="rewrite" parents="27"/>
    </justification>
  </clause>

  <clause id="1614">
    <literal><![CDATA[
      cb ^ cx = cb
    ]]></literal>
    <literal><![CDATA[
      cb <= cy
    ]]></literal>
    <justification jstring="[hyper(38,a,1547,a),rewrite(111(5))].">
      <j1 rule="hyper" parents="38 1547"/>
      <j2 rule="rewrite" parents="111"/>
    </justification>
  </clause>

  <clause id="2075">
    <literal><![CDATA[
      cb <= cy
    ]]></literal>
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <justification jstring="[para(1614(a,1),1584(a,1)),flip(b),unit_del(b,42)].">
      <j1 rule="para" parents="1614 1584"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="42"/>
    </justification>
  </clause>

  <clause id="2078">
    <literal><![CDATA[
      cb ^ cy = cb
    ]]></literal>
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <justification jstring="[hyper(38,a,2075,a)].">
      <j1 rule="hyper" parents="38 2075"/>
    </justification>
  </clause>

  <clause id="2568">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      B(x,y,y ^ z)
    ]]></literal>
    <justification jstring="[para(269(b,1),116(b,1,1)),rewrite(34(5)),xx(c)].">
      <j1 rule="para" parents="269 116"/>
      <j2 rule="rewrite" parents="34"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

  <clause id="3063">
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <literal><![CDATA[
      cb v cy = cy
    ]]></literal>
    <justification jstring="[para(2078(a,1),60(a,1,2)),rewrite(28(6))].">
      <j1 rule="para" parents="2078 60"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="3574">
    <literal><![CDATA[
      x <= y
    ]]></literal>
    <literal><![CDATA[
      B(y,x,x v z)
    ]]></literal>
    <justification jstring="[para(339(b,1),130(b,1,1)),rewrite(32(5)),xx(c)].">
      <j1 rule="para" parents="339 130"/>
      <j2 rule="rewrite" parents="32"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

  <clause id="4505">
    <literal><![CDATA[
      cx ^ (cb v cy) = cb ^ cx
    ]]></literal>
    <justification jstring="[para(86(a,1),152(a,1,2)),rewrite(27(3)),flip(a)].">
      <j1 rule="para" parents="86 152"/>
      <j2 rule="rewrite" parents="27"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="4871">
    <literal><![CDATA[
      ca ^ (cb v cx) = cx ^ ca
    ]]></literal>
    <justification jstring="[para(84(a,1),158(a,1,2)),rewrite(27(3),27(8)),flip(a)].">
      <j1 rule="para" parents="84 158"/>
      <j2 rule="rewrite" parents="27 27"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="4894">
    <literal><![CDATA[
      cb ^ (cx ^ ca) = cb ^ ca
    ]]></literal>
    <justification jstring="[para(581(a,1),158(a,1,2)),rewrite(53(5),27(4))].">
      <j1 rule="para" parents="581 158"/>
      <j2 rule="rewrite" parents="53 27"/>
    </justification>
  </clause>

  <clause id="5768">
    <literal><![CDATA[
      ca v (cb ^ cx) = cx v ca
    ]]></literal>
    <justification jstring="[para(85(a,1),180(a,1,2)),rewrite(28(3),28(8)),flip(a)].">
      <j1 rule="para" parents="85 180"/>
      <j2 rule="rewrite" parents="28 28"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="9702">
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <literal><![CDATA[
      cb <= x
    ]]></literal>
    <literal><![CDATA[
      B(x,cb,cy)
    ]]></literal>
    <justification jstring="[para(3063(b,1),3574(b,3))].">
      <j1 rule="para" parents="3063 3574"/>
    </justification>
  </clause>

  <clause id="9709">
    <literal><![CDATA[
      cb <= ca
    ]]></literal>
    <justification jstring="[factor(9702,a,b),unit_del(b,43)].">
      <j1 rule="factor" parents="9702"/>
      <j2 rule="unit_del" parents="43"/>
    </justification>
  </clause>

  <clause id="9711">
    <literal><![CDATA[
      cb ^ ca = cb
    ]]></literal>
    <justification jstring="[hyper(38,a,9709,a)].">
      <j1 rule="hyper" parents="38 9709"/>
    </justification>
  </clause>

  <clause id="9794">
    <literal><![CDATA[
      cb ^ (cx ^ ca) = cb
    ]]></literal>
    <justification jstring="[back_rewrite(4894),rewrite(9711(8))].">
      <j1 rule="back_rewrite" parents="4894"/>
      <j2 rule="rewrite" parents="9711"/>
    </justification>
  </clause>

  <clause id="9836">
    <literal><![CDATA[
      cb ^ (x ^ ca) = x ^ cb
    ]]></literal>
    <justification jstring="[para(9711(a,1),53(a,1,2)),flip(a)].">
      <j1 rule="para" parents="9711 53"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="9837">
    <literal><![CDATA[
      cb v ca = ca
    ]]></literal>
    <justification jstring="[para(9711(a,1),60(a,1,2)),rewrite(28(3))].">
      <j1 rule="para" parents="9711 60"/>
      <j2 rule="rewrite" parents="28"/>
    </justification>
  </clause>

  <clause id="9901">
    <literal><![CDATA[
      cb ^ cx = cb
    ]]></literal>
    <justification jstring="[back_rewrite(9794),rewrite(9836(5),27(3))].">
      <j1 rule="back_rewrite" parents="9794"/>
      <j2 rule="rewrite" parents="9836 27"/>
    </justification>
  </clause>

  <clause id="9962">
    <literal><![CDATA[
      cb v cx = cx ^ ca
    ]]></literal>
    <justification jstring="[back_rewrite(1559),rewrite(9837(6),27(5),4871(5)),flip(a)].">
      <j1 rule="back_rewrite" parents="1559"/>
      <j2 rule="rewrite" parents="9837 27 4871"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="10004">
    <literal><![CDATA[
      cx v ca = ca
    ]]></literal>
    <justification jstring="[back_rewrite(5768),rewrite(9901(4),28(3),9837(3)),flip(a)].">
      <j1 rule="back_rewrite" parents="5768"/>
      <j2 rule="rewrite" parents="9901 28 9837"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="10012">
    <literal><![CDATA[
      cx ^ (cb v cy) = cb
    ]]></literal>
    <justification jstring="[back_rewrite(4505),rewrite(9901(8))].">
      <j1 rule="back_rewrite" parents="4505"/>
      <j2 rule="rewrite" parents="9901"/>
    </justification>
  </clause>

  <clause id="10084">
    <literal><![CDATA[
      cx ^ ca = cx
    ]]></literal>
    <justification jstring="[back_rewrite(85),rewrite(9901(3),638(5),9962(3))].">
      <j1 rule="back_rewrite" parents="85"/>
      <j2 rule="rewrite" parents="9901 638 9962"/>
    </justification>
  </clause>

  <clause id="10186">
    <literal><![CDATA[
      cb v cy <= cx
    ]]></literal>
    <justification jstring="[back_rewrite(651),rewrite(9962(3),10084(3),9962(9),10084(9)),unit_del(a,42)].">
      <j1 rule="back_rewrite" parents="651"/>
      <j2 rule="rewrite" parents="9962 10084 9962 10084"/>
      <j2 rule="unit_del" parents="42"/>
    </justification>
  </clause>

  <clause id="10240">
    <literal><![CDATA[
      cb v cx = cx
    ]]></literal>
    <justification jstring="[back_rewrite(9962),rewrite(10084(6))].">
      <j1 rule="back_rewrite" parents="9962"/>
      <j2 rule="rewrite" parents="10084"/>
    </justification>
  </clause>

  <clause id="10442">
    <literal><![CDATA[
      cx ^ (x v ca) = cx
    ]]></literal>
    <justification jstring="[para(10004(a,1),132(a,1,2,2))].">
      <j1 rule="para" parents="10004 132"/>
    </justification>
  </clause>

  <clause id="10477">
    <literal><![CDATA[
      (cx ^ x) v (ca ^ x) = ca ^ x
    ]]></literal>
    <justification jstring="[para(10004(a,1),203(a,1,2,1)),rewrite(10004(8))].">
      <j1 rule="para" parents="10004 203"/>
      <j2 rule="rewrite" parents="10004"/>
    </justification>
  </clause>

  <clause id="10575">
    <literal><![CDATA[
      cb v cy = cb
    ]]></literal>
    <justification jstring="[hyper(38,a,10186,a),rewrite(27(5),10012(5)),flip(a)].">
      <j1 rule="hyper" parents="38 10186"/>
      <j2 rule="rewrite" parents="27 10012"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="10613">
    <literal><![CDATA[
      (cb ^ x) v (cx ^ x) = cx ^ x
    ]]></literal>
    <justification jstring="[para(10240(a,1),203(a,1,2,1)),rewrite(10240(8))].">
      <j1 rule="para" parents="10240 203"/>
      <j2 rule="rewrite" parents="10240"/>
    </justification>
  </clause>

  <clause id="10857">
    <literal><![CDATA[
      cb ^ cy = cy
    ]]></literal>
    <justification jstring="[para(10575(a,1),56(a,1,2)),rewrite(27(3))].">
      <j1 rule="para" parents="10575 56"/>
      <j2 rule="rewrite" parents="27"/>
    </justification>
  </clause>

  <clause id="11089">
    <literal><![CDATA[
      x <= cb
    ]]></literal>
    <literal><![CDATA[
      B(x,cb,cy)
    ]]></literal>
    <justification jstring="[para(10857(a,1),2568(b,3))].">
      <j1 rule="para" parents="10857 2568"/>
    </justification>
  </clause>

  <clause id="16657">
    <literal><![CDATA[
      ca <= cb
    ]]></literal>
    <justification jstring="[hyper(43,a,11089,b)].">
      <j1 rule="hyper" parents="43 11089"/>
    </justification>
  </clause>

  <clause id="16659">
    <literal><![CDATA[
      ca = cb
    ]]></literal>
    <justification jstring="[hyper(38,a,16657,a),rewrite(27(3),9711(3)),flip(a)].">
      <j1 rule="hyper" parents="38 16657"/>
      <j2 rule="rewrite" parents="27 9711"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="16931">
    <literal><![CDATA[
      cx ^ x = cb ^ x
    ]]></literal>
    <justification jstring="[back_rewrite(10477),rewrite(16659(3),28(5),10613(5),16659(3))].">
      <j1 rule="back_rewrite" parents="10477"/>
      <j2 rule="rewrite" parents="16659 28 10613 16659"/>
    </justification>
  </clause>

  <clause id="16939">
    <literal><![CDATA[
      $F
    ]]></literal>
    <justification jstring="[back_rewrite(10442),rewrite(16659(2),16931(4),56(4)),flip(a),unit_del(a,42)].">
      <j1 rule="back_rewrite" parents="10442"/>
      <j2 rule="rewrite" parents="16659 16931 56"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="42"/>
    </justification>
  </clause>

</proof>

</proofs>
