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

<heading><![CDATA[
Prover9 (64) version 2009-02A, February 2009.
Process 4251 was started by veroff on theorem,
Sun Dec 28 16:45:38 2014
The command was "prover9 -f hoops.in".
]]></heading>

<proof number="1" length="242" max_count="37">

<comments><![CDATA[
% Proof 1 at 8.28 (+ 0.33) seconds: "main conjecture".
% Length of proof is 242.
% Level of proof is 58.
% Maximum clause weight is 37.
% Given clauses 234.

]]></comments>

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

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

  <clause id="3" type="assumption">
    <literal><![CDATA[
      x + y >= z <-> y >= x ==> z
    ]]></literal>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

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

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

  <clause id="7" type="goal">
    <literal><![CDATA[
      m(c(x,y),z) = m(x,m(y,z))
    ]]></literal>
    <attribute><![CDATA[
      label("main conjecture")
    ]]></attribute>
    <attribute><![CDATA[
      label(non_clause)
    ]]></attribute>
    <attribute><![CDATA[
      label(goal)
    ]]></attribute>
    <justification jstring="[goal].">
      <j1 rule="goal"/>
    </justification>
  </clause>

  <clause id="8" type="assumption">
    <literal><![CDATA[
      (x + y) + z = x + (y + z)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="9" type="assumption">
    <literal><![CDATA[
      x + y = y + x
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="10" type="assumption">
    <literal><![CDATA[
      x + 0 = x
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="11" type="assumption">
    <literal><![CDATA[
      x >= x
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

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

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

  <clause id="14" type="clausify">
    <literal><![CDATA[
      -(x + y >= z)
    ]]></literal>
    <literal><![CDATA[
      y >= x ==> z
    ]]></literal>
    <justification jstring="[clausify(3)].">
      <j1 rule="clausify" parents="3"/>
    </justification>
  </clause>

  <clause id="15" type="clausify">
    <literal><![CDATA[
      x + y >= z
    ]]></literal>
    <literal><![CDATA[
      -(y >= x ==> z)
    ]]></literal>
    <justification jstring="[clausify(3)].">
      <j1 rule="clausify" parents="3"/>
    </justification>
  </clause>

  <clause id="16" type="assumption">
    <literal><![CDATA[
      x >= 0
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="18" type="clausify">
    <literal><![CDATA[
      -(x >= y)
    ]]></literal>
    <literal><![CDATA[
      y ==> z >= x ==> z
    ]]></literal>
    <justification jstring="[clausify(5)].">
      <j1 rule="clausify" parents="5"/>
    </justification>
  </clause>

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

  <clause id="20" type="assumption">
    <literal><![CDATA[
      x + (x ==> y) = y + (y ==> x)
    ]]></literal>
    <attribute><![CDATA[
      label("cwc")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="21" type="assumption">
    <literal><![CDATA[
      c(x,y) = x + (x ==> y)
    ]]></literal>
    <attribute><![CDATA[
      label("weak conjunction")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="22" type="assumption">
    <literal><![CDATA[
      m(x,y) = x ==> (x + y)
    ]]></literal>
    <attribute><![CDATA[
      label("strong implication")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

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

  <clause id="24" type="deny">
    <literal><![CDATA[
      m(c(c1,c2),c3) != m(c1,m(c2,c3))
    ]]></literal>
    <attribute><![CDATA[
      label("main conjecture")
    ]]></attribute>
    <attribute><![CDATA[
      answer("main conjecture")
    ]]></attribute>
    <justification jstring="[deny(7)].">
      <j1 rule="deny" parents="7"/>
    </justification>
  </clause>

  <clause id="25">
    <literal><![CDATA[
      (x + y) + z = y + (x + z)
    ]]></literal>
    <justification jstring="[para(9(a,1),8(a,1,1))].">
      <j1 rule="para" parents="9 8"/>
    </justification>
  </clause>

  <clause id="29">
    <literal><![CDATA[
      x >= y ==> (y + x)
    ]]></literal>
    <justification jstring="[hyper(14,a,11,a)].">
      <j1 rule="hyper" parents="14 11"/>
    </justification>
  </clause>

  <clause id="30">
    <literal><![CDATA[
      -(x + (y + z) >= u)
    ]]></literal>
    <literal><![CDATA[
      z >= (x + y) ==> u
    ]]></literal>
    <justification jstring="[para(8(a,1),14(a,1))].">
      <j1 rule="para" parents="8 14"/>
    </justification>
  </clause>

  <clause id="31">
    <literal><![CDATA[
      -(x >= y)
    ]]></literal>
    <literal><![CDATA[
      0 >= x ==> y
    ]]></literal>
    <justification jstring="[para(10(a,1),14(a,1))].">
      <j1 rule="para" parents="10 14"/>
    </justification>
  </clause>

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

  <clause id="33">
    <literal><![CDATA[
      x >= y ==> 0
    ]]></literal>
    <justification jstring="[hyper(14,a,16,a)].">
      <j1 rule="hyper" parents="14 16"/>
    </justification>
  </clause>

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

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

  <clause id="37">
    <literal><![CDATA[
      m(x,y) = x ==> (y + x)
    ]]></literal>
    <justification jstring="[para(9(a,1),22(a,2,2))].">
      <j1 rule="para" parents="9 22"/>
    </justification>
  </clause>

  <clause id="38">
    <literal><![CDATA[
      x ==> 0 = 0
    ]]></literal>
    <justification jstring="[hyper(13,a,16,a,b,33,a),flip(a)].">
      <j1 rule="hyper" parents="13 16 33"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="42">
    <literal><![CDATA[
      x >= m(y,x)
    ]]></literal>
    <justification jstring="[para(22(a,2),29(a,2))].">
      <j1 rule="para" parents="22 29"/>
    </justification>
  </clause>

  <clause id="43">
    <literal><![CDATA[
      x ==> x = 0
    ]]></literal>
    <justification jstring="[hyper(13,a,16,a,b,41,a),flip(a)].">
      <j1 rule="hyper" parents="13 16 41"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="47">
    <literal><![CDATA[
      x ==> (y ==> y) = 0
    ]]></literal>
    <justification jstring="[para(43(a,2),38(a,1,2))].">
      <j1 rule="para" parents="43 38"/>
    </justification>
  </clause>

  <clause id="48">
    <literal><![CDATA[
      x ==> (y + (y ==> z)) >= x ==> z
    ]]></literal>
    <justification jstring="[hyper(19,a,32,a)].">
      <j1 rule="hyper" parents="19 32"/>
    </justification>
  </clause>

  <clause id="49">
    <literal><![CDATA[
      x + (y + ((x + y) ==> z)) >= z
    ]]></literal>
    <justification jstring="[para(8(a,1),32(a,1))].">
      <j1 rule="para" parents="8 32"/>
    </justification>
  </clause>

  <clause id="50">
    <literal><![CDATA[
      (x ==> y) + x >= y
    ]]></literal>
    <justification jstring="[para(9(a,1),32(a,1))].">
      <j1 rule="para" parents="9 32"/>
    </justification>
  </clause>

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

  <clause id="52">
    <literal><![CDATA[
      x + c(y,x ==> z) >= z
    ]]></literal>
    <justification jstring="[hyper(15,b,51,a)].">
      <j1 rule="hyper" parents="15 51"/>
    </justification>
  </clause>

  <clause id="53">
    <literal><![CDATA[
      x >= (x ==> y) ==> y
    ]]></literal>
    <justification jstring="[hyper(14,a,50,a)].">
      <j1 rule="hyper" parents="14 50"/>
    </justification>
  </clause>

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

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

  <clause id="58">
    <literal><![CDATA[
      x >= y v x
    ]]></literal>
    <justification jstring="[para(23(a,2),53(a,2))].">
      <j1 rule="para" parents="23 53"/>
    </justification>
  </clause>

  <clause id="60">
    <literal><![CDATA[
      (x v y) ==> z >= y ==> z
    ]]></literal>
    <justification jstring="[hyper(18,a,58,a)].">
      <j1 rule="hyper" parents="18 58"/>
    </justification>
  </clause>

  <clause id="62">
    <literal><![CDATA[
      c(x,y) >= z v y
    ]]></literal>
    <justification jstring="[hyper(12,a,51,a,b,58,a)].">
      <j1 rule="hyper" parents="12 51 58"/>
    </justification>
  </clause>

  <clause id="64">
    <literal><![CDATA[
      0 >= c(x,y) ==> (z v y)
    ]]></literal>
    <justification jstring="[hyper(31,a,62,a)].">
      <j1 rule="hyper" parents="31 62"/>
    </justification>
  </clause>

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

  <clause id="67">
    <literal><![CDATA[
      m(x,y + z) = x ==> (y + (z + x))
    ]]></literal>
    <justification jstring="[para(8(a,1),37(a,2,2))].">
      <j1 rule="para" parents="8 37"/>
    </justification>
  </clause>

  <clause id="68">
    <literal><![CDATA[
      (x v y) ==> x = y ==> x
    ]]></literal>
    <justification jstring="[hyper(13,a,57,a,b,60,a)].">
      <j1 rule="hyper" parents="13 57 60"/>
    </justification>
  </clause>

  <clause id="69">
    <literal><![CDATA[
      c(x,y) ==> (z v y) = 0
    ]]></literal>
    <justification jstring="[hyper(13,a,16,a,b,64,a),flip(a)].">
      <j1 rule="hyper" parents="13 16 64"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="71">
    <literal><![CDATA[
      x + (y + z) = y + (x + z)
    ]]></literal>
    <justification jstring="[para(25(a,1),8(a,1))].">
      <j1 rule="para" parents="25 8"/>
    </justification>
  </clause>

  <clause id="72">
    <literal><![CDATA[
      x ==> (x + (x ==> y)) = x ==> y
    ]]></literal>
    <justification jstring="[hyper(13,a,29,a,b,48,a)].">
      <j1 rule="hyper" parents="13 29 48"/>
    </justification>
  </clause>

  <clause id="73">
    <literal><![CDATA[
      -(x + (y + z) >= u)
    ]]></literal>
    <literal><![CDATA[
      x + z >= y ==> u
    ]]></literal>
    <justification jstring="[para(71(a,1),14(a,1))].">
      <j1 rule="para" parents="71 14"/>
    </justification>
  </clause>

  <clause id="74">
    <literal><![CDATA[
      x + (y + (y ==> z)) = z + (x + (z ==> y))
    ]]></literal>
    <justification jstring="[para(20(a,1),71(a,1,2))].">
      <j1 rule="para" parents="20 71"/>
    </justification>
  </clause>

  <clause id="75">
    <literal><![CDATA[
      m(x,y + z) = x ==> (y + (x + z))
    ]]></literal>
    <justification jstring="[para(71(a,1),22(a,2,2))].">
      <j1 rule="para" parents="71 22"/>
    </justification>
  </clause>

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

  <clause id="77">
    <literal><![CDATA[
      m(x,x ==> y) = x ==> y
    ]]></literal>
    <justification jstring="[para(72(a,1),22(a,2))].">
      <j1 rule="para" parents="72 22"/>
    </justification>
  </clause>

  <clause id="78">
    <literal><![CDATA[
      -(x + c(y,z) >= u)
    ]]></literal>
    <literal><![CDATA[
      y ==> z >= (x + y) ==> u
    ]]></literal>
    <justification jstring="[para(21(a,2),30(a,1,2))].">
      <j1 rule="para" parents="21 30"/>
    </justification>
  </clause>

  <clause id="79">
    <literal><![CDATA[
      x + ((x + y) ==> z) >= y ==> z
    ]]></literal>
    <justification jstring="[hyper(73,a,49,a)].">
      <j1 rule="hyper" parents="73 49"/>
    </justification>
  </clause>

  <clause id="80">
    <literal><![CDATA[
      (x + y) ==> z >= x ==> (y ==> z)
    ]]></literal>
    <justification jstring="[hyper(14,a,79,a)].">
      <j1 rule="hyper" parents="14 79"/>
    </justification>
  </clause>

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

  <clause id="82">
    <literal><![CDATA[
      m(x,y + (x ==> z)) = x ==> (z + (y + (z ==> x)))
    ]]></literal>
    <justification jstring="[para(74(a,1),75(a,2,2))].">
      <j1 rule="para" parents="74 75"/>
    </justification>
  </clause>

  <clause id="83">
    <literal><![CDATA[
      x ==> (y ==> z) >= (y + x) ==> z
    ]]></literal>
    <justification jstring="[hyper(78,a,52,a)].">
      <j1 rule="hyper" parents="78 52"/>
    </justification>
  </clause>

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

  <clause id="85">
    <literal><![CDATA[
      (x + y) ==> z = x ==> (y ==> z)
    ]]></literal>
    <justification jstring="[hyper(13,a,80,a,b,84,a),flip(a)].">
      <j1 rule="hyper" parents="13 80 84"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="86">
    <literal><![CDATA[
      (x + y) ==> z = y ==> (x ==> z)
    ]]></literal>
    <justification jstring="[para(9(a,1),85(a,1,1))].">
      <j1 rule="para" parents="9 85"/>
    </justification>
  </clause>

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

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

  <clause id="89">
    <literal><![CDATA[
      x ==> (y ==> (x + y)) = 0
    ]]></literal>
    <justification jstring="[para(85(a,1),43(a,1))].">
      <j1 rule="para" parents="85 43"/>
    </justification>
  </clause>

  <clause id="90">
    <literal><![CDATA[
      m(x + y,z) = x ==> (y ==> (z + (x + y)))
    ]]></literal>
    <justification jstring="[para(85(a,1),37(a,2))].">
      <j1 rule="para" parents="85 37"/>
    </justification>
  </clause>

  <clause id="91">
    <literal><![CDATA[
      (x + y) ==> x = 0
    ]]></literal>
    <justification jstring="[para(86(a,2),47(a,1))].">
      <j1 rule="para" parents="86 47"/>
    </justification>
  </clause>

  <clause id="92">
    <literal><![CDATA[
      x ==> (y ==> z) = y ==> (x ==> z)
    ]]></literal>
    <justification jstring="[para(86(a,1),85(a,1))].">
      <j1 rule="para" parents="86 85"/>
    </justification>
  </clause>

  <clause id="93">
    <literal><![CDATA[
      x v (x + y) = 0 ==> x
    ]]></literal>
    <justification jstring="[para(91(a,1),23(a,2,1))].">
      <j1 rule="para" parents="91 23"/>
    </justification>
  </clause>

  <clause id="94">
    <literal><![CDATA[
      x ==> (y ==> x) = 0
    ]]></literal>
    <justification jstring="[para(91(a,1),85(a,1)),flip(a)].">
      <j1 rule="para" parents="91 85"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="95">
    <literal><![CDATA[
      x + (y ==> (z ==> y)) = x
    ]]></literal>
    <justification jstring="[para(94(a,2),10(a,1,2))].">
      <j1 rule="para" parents="94 10"/>
    </justification>
  </clause>

  <clause id="96">
    <literal><![CDATA[
      (x ==> y) + ((x ==> y) ==> y) = y
    ]]></literal>
    <justification jstring="[para(95(a,1),20(a,1)),flip(a)].">
      <j1 rule="para" parents="95 20"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="97">
    <literal><![CDATA[
      x >= y ==> x
    ]]></literal>
    <justification jstring="[para(95(a,1),32(a,1))].">
      <j1 rule="para" parents="95 32"/>
    </justification>
  </clause>

  <clause id="99">
    <literal><![CDATA[
      0 ==> x = x
    ]]></literal>
    <justification jstring="[hyper(13,a,54,a,b,97,a),flip(a)].">
      <j1 rule="hyper" parents="13 54 97"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

  <clause id="106">
    <literal><![CDATA[
      c(x,c(y,z)) ==> y = 0
    ]]></literal>
    <justification jstring="[para(103(a,1),69(a,1,2))].">
      <j1 rule="para" parents="103 69"/>
    </justification>
  </clause>

  <clause id="107">
    <literal><![CDATA[
      (x ==> y) + ((x ==> y) ==> z) = z + (x ==> (z ==> y))
    ]]></literal>
    <justification jstring="[para(92(a,1),20(a,1,2)),flip(a)].">
      <j1 rule="para" parents="92 20"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

  <clause id="110">
    <literal><![CDATA[
      x ==> (y ==> c(x,z)) = y ==> (x ==> z)
    ]]></literal>
    <justification jstring="[para(76(a,1),92(a,1,2)),flip(a)].">
      <j1 rule="para" parents="76 92"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

  <clause id="113">
    <literal><![CDATA[
      (x v y) + (z + (y ==> x)) = z + x
    ]]></literal>
    <justification jstring="[para(112(a,1),71(a,1,2)),flip(a)].">
      <j1 rule="para" parents="112 71"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="115">
    <literal><![CDATA[
      c(x ==> y,x ==> z) = (x ==> y) + (c(x,y) ==> z)
    ]]></literal>
    <justification jstring="[para(87(a,2),108(a,2,2))].">
      <j1 rule="para" parents="87 108"/>
    </justification>
  </clause>

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

  <clause id="117">
    <literal><![CDATA[
      m(x + y,z) = x ==> m(y,z + x)
    ]]></literal>
    <justification jstring="[para(67(a,2),90(a,2,2))].">
      <j1 rule="para" parents="67 90"/>
    </justification>
  </clause>

  <clause id="118">
    <literal><![CDATA[
      m(x + y,z) = x ==> m(y,x + z)
    ]]></literal>
    <justification jstring="[para(9(a,1),117(a,2,2,2))].">
      <j1 rule="para" parents="9 117"/>
    </justification>
  </clause>

  <clause id="119">
    <literal><![CDATA[
      m(x,m(x + y,z)) = x ==> m(y,z + x)
    ]]></literal>
    <justification jstring="[para(117(a,2),77(a,1,2))].">
      <j1 rule="para" parents="117 77"/>
    </justification>
  </clause>

  <clause id="120">
    <literal><![CDATA[
      m((x v y) + z,y ==> x) = (x v y) ==> m(z,x)
    ]]></literal>
    <justification jstring="[para(111(a,1),117(a,2,2,2))].">
      <j1 rule="para" parents="111 117"/>
    </justification>
  </clause>

  <clause id="121">
    <literal><![CDATA[
      m(x + y,z) = y ==> m(x,y + z)
    ]]></literal>
    <justification jstring="[para(9(a,1),118(a,1,1))].">
      <j1 rule="para" parents="9 118"/>
    </justification>
  </clause>

  <clause id="122">
    <literal><![CDATA[
      (x ==> y) v z = x ==> (y v (z + x))
    ]]></literal>
    <justification jstring="[para(88(a,2),109(a,2,2))].">
      <j1 rule="para" parents="88 109"/>
    </justification>
  </clause>

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

  <clause id="124">
    <literal><![CDATA[
      x v (y + (x v z)) = x v (y + z)
    ]]></literal>
    <justification jstring="[para(114(a,2),88(a,2)),flip(a)].">
      <j1 rule="para" parents="114 88"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="126">
    <literal><![CDATA[
      c(x,y) ==> c(x,z) = x ==> ((x ==> y) ==> z)
    ]]></literal>
    <justification jstring="[para(116(a,2),92(a,1))].">
      <j1 rule="para" parents="116 92"/>
    </justification>
  </clause>

  <clause id="127">
    <literal><![CDATA[
      m(x,m(x + y,z)) = m(x + y,z)
    ]]></literal>
    <justification jstring="[para(119(a,2),117(a,2)),flip(a)].">
      <j1 rule="para" parents="119 117"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="128">
    <literal><![CDATA[
      x ==> (m(x + y,z) + x) = m(x + y,z)
    ]]></literal>
    <justification jstring="[para(127(a,1),37(a,1)),flip(a)].">
      <j1 rule="para" parents="127 37"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="129">
    <literal><![CDATA[
      (x ==> y) v (y v z) = (x ==> y) v z
    ]]></literal>
    <justification jstring="[para(125(a,2),123(a,2)),flip(a)].">
      <j1 rule="para" parents="125 123"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="131">
    <literal><![CDATA[
      c(x,y) ==> c(x,z) = c(x,y) ==> z
    ]]></literal>
    <justification jstring="[para(126(a,2),87(a,2)),flip(a)].">
      <j1 rule="para" parents="126 87"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="132">
    <literal><![CDATA[
      x ==> ((x v y) + (m(x + z,u) + (y ==> x))) = m(x + z,u)
    ]]></literal>
    <justification jstring="[para(113(a,2),128(a,1,2))].">
      <j1 rule="para" parents="113 128"/>
    </justification>
  </clause>

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

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

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

  <clause id="136">
    <literal><![CDATA[
      x + (x ==> (x + y)) = x + (y + 0)
    ]]></literal>
    <justification jstring="[para(91(a,1),35(a,2,2,2))].">
      <j1 rule="para" parents="91 35"/>
    </justification>
  </clause>

  <clause id="137">
    <literal><![CDATA[
      (x + (x ==> (y + z))) ==> z = 0
    ]]></literal>
    <justification jstring="[para(9(a,1),135(a,1,1,2,2))].">
      <j1 rule="para" parents="9 135"/>
    </justification>
  </clause>

  <clause id="138">
    <literal><![CDATA[
      x ==> ((x ==> (y + z)) ==> y) = 0
    ]]></literal>
    <justification jstring="[para(135(a,1),85(a,1)),flip(a)].">
      <j1 rule="para" parents="135 85"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="139">
    <literal><![CDATA[
      x ==> ((x ==> (y + z)) ==> z) = 0
    ]]></literal>
    <justification jstring="[para(137(a,1),85(a,1)),flip(a)].">
      <j1 rule="para" parents="137 85"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="141">
    <literal><![CDATA[
      x ==> (m(x,y) ==> y) = 0
    ]]></literal>
    <justification jstring="[para(37(a,2),138(a,1,2,1))].">
      <j1 rule="para" parents="37 138"/>
    </justification>
  </clause>

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

  <clause id="143">
    <literal><![CDATA[
      x + ((x ==> (x + y)) + 0) = x + y
    ]]></literal>
    <justification jstring="[para(10(a,2),142(a,1,2))].">
      <j1 rule="para" parents="10 142"/>
    </justification>
  </clause>

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

  <clause id="145">
    <literal><![CDATA[
      x + (m(x,y) + z) = (x + y) + z
    ]]></literal>
    <justification jstring="[para(144(a,1),8(a,1,1)),flip(a)].">
      <j1 rule="para" parents="144 8"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="146">
    <literal><![CDATA[
      x + (y + m(x + y,z)) = (x + y) + z
    ]]></literal>
    <justification jstring="[para(144(a,1),8(a,1)),flip(a)].">
      <j1 rule="para" parents="144 8"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="148">
    <literal><![CDATA[
      x ==> (m(x,y) ==> z) = (x + y) ==> z
    ]]></literal>
    <justification jstring="[para(144(a,1),85(a,1,1)),flip(a)].">
      <j1 rule="para" parents="144 85"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="150">
    <literal><![CDATA[
      (x ==> (x + y)) + (x + 0) = x + y
    ]]></literal>
    <justification jstring="[para(143(a,1),71(a,1)),flip(a)].">
      <j1 rule="para" parents="143 71"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="152">
    <literal><![CDATA[
      x ==> (m(x,y) ==> z) = x ==> (y ==> z)
    ]]></literal>
    <justification jstring="[para(148(a,2),85(a,1))].">
      <j1 rule="para" parents="148 85"/>
    </justification>
  </clause>

  <clause id="153">
    <literal><![CDATA[
      (x ==> (x + y)) + (x + (z ==> (m(z,u) ==> u))) = x + y
    ]]></literal>
    <justification jstring="[para(141(a,2),150(a,1,2,2))].">
      <j1 rule="para" parents="141 150"/>
    </justification>
  </clause>

  <clause id="154">
    <literal><![CDATA[
      x ==> m(m(x,y),z) = x ==> (y ==> (m(x,y) + z))
    ]]></literal>
    <justification jstring="[para(22(a,2),152(a,1,2))].">
      <j1 rule="para" parents="22 152"/>
    </justification>
  </clause>

  <clause id="155">
    <literal><![CDATA[
      x + (y + m(x + y,z)) = x + (y + z)
    ]]></literal>
    <justification jstring="[para(146(a,2),8(a,1))].">
      <j1 rule="para" parents="146 8"/>
    </justification>
  </clause>

  <clause id="156">
    <literal><![CDATA[
      m(x,y + m(x,z)) = m(x,y + z)
    ]]></literal>
    <justification jstring="[para(147(a,2),75(a,2)),flip(a)].">
      <j1 rule="para" parents="147 75"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="157">
    <literal><![CDATA[
      m(x,y + m(x,z)) = m(x,z + y)
    ]]></literal>
    <justification jstring="[para(9(a,1),156(a,2,2))].">
      <j1 rule="para" parents="9 156"/>
    </justification>
  </clause>

  <clause id="158">
    <literal><![CDATA[
      m(x + y,m(x,z)) = y ==> m(x,y + z)
    ]]></literal>
    <justification jstring="[para(156(a,1),121(a,2,2))].">
      <j1 rule="para" parents="156 121"/>
    </justification>
  </clause>

  <clause id="159">
    <literal><![CDATA[
      m(x,m(x,y) + z) = m(x,y + z)
    ]]></literal>
    <justification jstring="[para(9(a,1),157(a,1,2))].">
      <j1 rule="para" parents="9 157"/>
    </justification>
  </clause>

  <clause id="160">
    <literal><![CDATA[
      m(x,y + m(x + y,z)) = x ==> (x + (y + z))
    ]]></literal>
    <justification jstring="[para(155(a,1),22(a,2,2))].">
      <j1 rule="para" parents="155 22"/>
    </justification>
  </clause>

  <clause id="161">
    <literal><![CDATA[
      m(x + y,m(x,z)) = m(x + y,z)
    ]]></literal>
    <justification jstring="[para(158(a,2),121(a,2)),flip(a)].">
      <j1 rule="para" parents="158 121"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="162">
    <literal><![CDATA[
      m(c(x,y),m(x,z)) = m(x + (x ==> y),z)
    ]]></literal>
    <justification jstring="[para(21(a,2),161(a,1,1))].">
      <j1 rule="para" parents="21 161"/>
    </justification>
  </clause>

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

  <clause id="164">
    <literal><![CDATA[
      m(c(x,y),m(x,z)) = m(c(y,x),z)
    ]]></literal>
    <justification jstring="[para(36(a,2),162(a,2,1))].">
      <j1 rule="para" parents="36 162"/>
    </justification>
  </clause>

  <clause id="165">
    <literal><![CDATA[
      m(x,y) >= m(c(x,z),y)
    ]]></literal>
    <justification jstring="[para(163(a,1),42(a,2))].">
      <j1 rule="para" parents="163 42"/>
    </justification>
  </clause>

  <clause id="166">
    <literal><![CDATA[
      m(x,y) >= m(c(z,x),y)
    ]]></literal>
    <justification jstring="[para(65(a,1),165(a,2,1))].">
      <j1 rule="para" parents="65 165"/>
    </justification>
  </clause>

  <clause id="167">
    <literal><![CDATA[
      m(x,m(y,z)) >= m(c(x,y),z)
    ]]></literal>
    <justification jstring="[para(164(a,1),166(a,2))].">
      <j1 rule="para" parents="164 166"/>
    </justification>
  </clause>

  <clause id="168">
    <literal><![CDATA[
      m(x ==> y,z + (y v x)) = (x ==> y) ==> (y + (z + (y ==> (x ==> y))))
    ]]></literal>
    <justification jstring="[para(23(a,2),82(a,1,2,2))].">
      <j1 rule="para" parents="23 82"/>
    </justification>
  </clause>

  <clause id="169">
    <literal><![CDATA[
      m(x,m(y,z) + (x ==> y)) = x ==> (y + (z + (y ==> x)))
    ]]></literal>
    <justification jstring="[para(151(a,1),82(a,2,2))].">
      <j1 rule="para" parents="151 82"/>
    </justification>
  </clause>

  <clause id="170">
    <literal><![CDATA[
      (x ==> y) + (x ==> ((x ==> y) ==> (y + z))) = x ==> (y + z)
    ]]></literal>
    <justification jstring="[para(107(a,1),149(a,1))].">
      <j1 rule="para" parents="107 149"/>
    </justification>
  </clause>

  <clause id="171">
    <literal><![CDATA[
      c(x ==> c(y,z),x ==> y) = (x ==> c(y,z)) + 0
    ]]></literal>
    <justification jstring="[para(106(a,1),115(a,2,2))].">
      <j1 rule="para" parents="106 115"/>
    </justification>
  </clause>

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

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

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

  <clause id="175">
    <literal><![CDATA[
      x ==> (y ==> (z v x)) = y ==> 0
    ]]></literal>
    <justification jstring="[para(173(a,1),92(a,1,2)),flip(a)].">
      <j1 rule="para" parents="173 92"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="177">
    <literal><![CDATA[
      c(c(x,y),y) = c(x,y)
    ]]></literal>
    <justification jstring="[para(105(a,1),176(a,1,2))].">
      <j1 rule="para" parents="105 176"/>
    </justification>
  </clause>

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

  <clause id="179">
    <literal><![CDATA[
      c(x,c(y,x)) ==> z = c(y,x) ==> c(x,z)
    ]]></literal>
    <justification jstring="[para(178(a,1),131(a,1,1)),flip(a)].">
      <j1 rule="para" parents="178 131"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="181">
    <literal><![CDATA[
      x ==> (y ==> ((x ==> z) ==> z)) = 0
    ]]></literal>
    <justification jstring="[para(23(a,1),180(a,1,2,2))].">
      <j1 rule="para" parents="23 180"/>
    </justification>
  </clause>

  <clause id="183">
    <literal><![CDATA[
      c(x,y) ==> c(y,z) = c(x,y) ==> z
    ]]></literal>
    <justification jstring="[para(178(a,1),179(a,1,1)),flip(a)].">
      <j1 rule="para" parents="178 179"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="184">
    <literal><![CDATA[
      c(x ==> y,x ==> c(y,z)) = (x ==> y) + (c(x,y) ==> z)
    ]]></literal>
    <justification jstring="[para(183(a,1),115(a,2,2))].">
      <j1 rule="para" parents="183 115"/>
    </justification>
  </clause>

  <clause id="185">
    <literal><![CDATA[
      m(x,y + m(x + y,z)) = m(x,y + z)
    ]]></literal>
    <justification jstring="[para(160(a,2),22(a,2)),flip(a)].">
      <j1 rule="para" parents="160 22"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="186">
    <literal><![CDATA[
      c(x ==> c(y,z),x ==> y) = x ==> c(y,z)
    ]]></literal>
    <justification jstring="[para(171(a,2),10(a,1))].">
      <j1 rule="para" parents="171 10"/>
    </justification>
  </clause>

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

  <clause id="188">
    <literal><![CDATA[
      m(x,y) + (x + (z ==> (m(z,u) ==> u))) = x + y
    ]]></literal>
    <justification jstring="[para(22(a,2),153(a,1,1))].">
      <j1 rule="para" parents="22 153"/>
    </justification>
  </clause>

  <clause id="189">
    <literal><![CDATA[
      m(x,y) + ((m(x,z) ==> z) + ((m(x,z) ==> z) ==> x)) = x + y
    ]]></literal>
    <justification jstring="[para(20(a,1),188(a,1,2))].">
      <j1 rule="para" parents="20 188"/>
    </justification>
  </clause>

  <clause id="190">
    <literal><![CDATA[
      m(x,m(y,z) + (x ==> y)) = m(x,z + (x ==> y))
    ]]></literal>
    <justification jstring="[para(169(a,2),82(a,2)),flip(a)].">
      <j1 rule="para" parents="169 82"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="191">
    <literal><![CDATA[
      m(x,m(y v x,z)) = m(x,z + (x ==> (y v x)))
    ]]></literal>
    <justification jstring="[para(174(a,1),190(a,1,2))].">
      <j1 rule="para" parents="174 190"/>
    </justification>
  </clause>

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

  <clause id="194">
    <literal><![CDATA[
      m(x,y + m((z v x) + y,u)) = m(x,m(z v x,y + u))
    ]]></literal>
    <justification jstring="[para(185(a,1),192(a,1,2)),flip(a)].">
      <j1 rule="para" parents="185 192"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="195">
    <literal><![CDATA[
      c(x ==> y,x ==> c(y,z)) = c(x ==> y,x ==> z)
    ]]></literal>
    <justification jstring="[para(184(a,2),115(a,2)),flip(a)].">
      <j1 rule="para" parents="184 115"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="196">
    <literal><![CDATA[
      c(x ==> y,x ==> z) = x ==> c(y,z)
    ]]></literal>
    <justification jstring="[para(195(a,1),187(a,1))].">
      <j1 rule="para" parents="195 187"/>
    </justification>
  </clause>

  <clause id="197">
    <literal><![CDATA[
      x ==> c(y,z) = (x ==> z) + ((x ==> z) ==> (x ==> y))
    ]]></literal>
    <justification jstring="[para(196(a,1),36(a,1))].">
      <j1 rule="para" parents="196 36"/>
    </justification>
  </clause>

  <clause id="198">
    <literal><![CDATA[
      (x ==> y) + ((x ==> y) ==> (x ==> z)) = x ==> (y + (y ==> z))
    ]]></literal>
    <justification jstring="[para(36(a,1),197(a,1,2)),flip(a)].">
      <j1 rule="para" parents="36 197"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="199">
    <literal><![CDATA[
      (x ==> y) + (x ==> ((x ==> y) ==> z)) = x ==> (y + (y ==> z))
    ]]></literal>
    <justification jstring="[para(92(a,1),198(a,1,2))].">
      <j1 rule="para" parents="92 198"/>
    </justification>
  </clause>

  <clause id="200">
    <literal><![CDATA[
      (x ==> y) + (x ==> m(x ==> y,z)) = x ==> (y + (y ==> ((x ==> y) + z)))
    ]]></literal>
    <justification jstring="[para(22(a,2),199(a,1,2,2))].">
      <j1 rule="para" parents="22 199"/>
    </justification>
  </clause>

  <clause id="201">
    <literal><![CDATA[
      x ==> ((x v y) + ((y ==> x) + m(x + z,u))) = m(x + z,u)
    ]]></literal>
    <justification jstring="[para(9(a,1),132(a,1,2,2))].">
      <j1 rule="para" parents="9 132"/>
    </justification>
  </clause>

  <clause id="202">
    <literal><![CDATA[
      (m(x,y) + (m(x,z) ==> z)) + ((m(x,z) ==> z) ==> x) = x + y
    ]]></literal>
    <justification jstring="[para(189(a,1),8(a,2))].">
      <j1 rule="para" parents="189 8"/>
    </justification>
  </clause>

  <clause id="203">
    <literal><![CDATA[
      m(x,y + m((z v x) + y,u)) = m(x,y + u)
    ]]></literal>
    <justification jstring="[para(194(a,2),192(a,1))].">
      <j1 rule="para" parents="194 192"/>
    </justification>
  </clause>

  <clause id="204">
    <literal><![CDATA[
      m(x,y + m((z v x) + m(x,y),u)) = m(x,m(x,y) + u)
    ]]></literal>
    <justification jstring="[para(203(a,1),159(a,1)),flip(a)].">
      <j1 rule="para" parents="203 159"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="206">
    <literal><![CDATA[
      m(x + (x ==> y),z) = x ==> ((x v u) + ((u ==> x) + m(y + (y ==> x),z)))
    ]]></literal>
    <justification jstring="[para(20(a,1),201(a,1,2,2,2,1)),flip(a)].">
      <j1 rule="para" parents="20 201"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="207">
    <literal><![CDATA[
      (x + (x ==> m(y,x))) + ((m(y,x) ==> x) ==> y) = y + x
    ]]></literal>
    <justification jstring="[para(20(a,1),202(a,1,1))].">
      <j1 rule="para" parents="20 202"/>
    </justification>
  </clause>

  <clause id="208">
    <literal><![CDATA[
      (x + (x ==> (y ==> (x + y)))) + ((m(y,x) ==> x) ==> y) = y + x
    ]]></literal>
    <justification jstring="[para(37(a,1),207(a,1,1,2,2))].">
      <j1 rule="para" parents="37 207"/>
    </justification>
  </clause>

  <clause id="209">
    <literal><![CDATA[
      m(x,y + m((z v x) + m(x,y),u)) = m(x,y + u)
    ]]></literal>
    <justification jstring="[para(204(a,2),159(a,1))].">
      <j1 rule="para" parents="204 159"/>
    </justification>
  </clause>

  <clause id="210">
    <literal><![CDATA[
      (x + 0) + ((m(y,x) ==> x) ==> y) = y + x
    ]]></literal>
    <justification jstring="[para(89(a,1),208(a,1,1,2))].">
      <j1 rule="para" parents="89 208"/>
    </justification>
  </clause>

  <clause id="211">
    <literal><![CDATA[
      x + ((m(y,x) ==> x) ==> y) = y + x
    ]]></literal>
    <justification jstring="[para(10(a,1),210(a,1,1))].">
      <j1 rule="para" parents="10 210"/>
    </justification>
  </clause>

  <clause id="213">
    <literal><![CDATA[
      x + (((y ==> (y + x)) ==> x) ==> y) = y + x
    ]]></literal>
    <justification jstring="[para(22(a,1),211(a,1,2,1,1))].">
      <j1 rule="para" parents="22 211"/>
    </justification>
  </clause>

  <clause id="214">
    <literal><![CDATA[
      (x + (x ==> y)) + (((z ==> (z + (y + (y ==> x)))) ==> (y + (y ==> x))) ==> z) = z + (y + (y ==> x))
    ]]></literal>
    <justification jstring="[para(20(a,1),213(a,1,1))].">
      <j1 rule="para" parents="20 213"/>
    </justification>
  </clause>

  <clause id="215">
    <literal><![CDATA[
      m(x ==> y,z + (y v x)) = (x ==> y) ==> (y + z)
    ]]></literal>
    <justification jstring="[para(95(a,1),168(a,2,2,2))].">
      <j1 rule="para" parents="95 168"/>
    </justification>
  </clause>

  <clause id="217">
    <literal><![CDATA[
      m(x ==> y,(z + (y ==> x)) + (y v x)) = m(x ==> y,z + x)
    ]]></literal>
    <justification jstring="[para(215(a,2),81(a,2)),flip(a)].">
      <j1 rule="para" parents="215 81"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="218">
    <literal><![CDATA[
      (x ==> y) + (x ==> m(x ==> y,z + (y v x))) = x ==> (y + z)
    ]]></literal>
    <justification jstring="[para(215(a,2),170(a,1,2,2))].">
      <j1 rule="para" parents="215 170"/>
    </justification>
  </clause>

  <clause id="219">
    <literal><![CDATA[
      (x ==> y) + (x ==> m(x ==> y,(z + (y ==> x)) + (y v x))) = m(x,z + (x ==> y))
    ]]></literal>
    <justification jstring="[para(218(a,2),82(a,2)),flip(a)].">
      <j1 rule="para" parents="218 82"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="220">
    <literal><![CDATA[
      (x ==> y) + (x ==> m(x ==> y,z + x)) = m(x,z + (x ==> y))
    ]]></literal>
    <justification jstring="[para(217(a,1),219(a,1,2,2))].">
      <j1 rule="para" parents="217 219"/>
    </justification>
  </clause>

  <clause id="221">
    <literal><![CDATA[
      (x ==> y) + m(x + (x ==> y),z) = m(x,z + (x ==> y))
    ]]></literal>
    <justification jstring="[para(117(a,2),220(a,1,2))].">
      <j1 rule="para" parents="117 220"/>
    </justification>
  </clause>

  <clause id="222">
    <literal><![CDATA[
      m(x + (x ==> y),z) = x ==> ((x v y) + m(y,z + (y ==> x)))
    ]]></literal>
    <justification jstring="[para(221(a,1),206(a,2,2,2))].">
      <j1 rule="para" parents="221 206"/>
    </justification>
  </clause>

  <clause id="223">
    <literal><![CDATA[
      m(x + (x ==> y),z) = y ==> ((y v x) + m(x,z + (x ==> y)))
    ]]></literal>
    <justification jstring="[para(20(a,1),222(a,1,1))].">
      <j1 rule="para" parents="20 222"/>
    </justification>
  </clause>

  <clause id="224">
    <literal><![CDATA[
      ((x v y) + m(y,z + (y ==> x))) + (((x v y) + m(y,z + (y ==> x))) ==> x) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(223(a,2),20(a,1,2)),flip(a)].">
      <j1 rule="para" parents="223 20"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="225">
    <literal><![CDATA[
      x + ((x ==> y) + (((z ==> (z + (y + (y ==> x)))) ==> (y + (y ==> x))) ==> z)) = z + (y + (y ==> x))
    ]]></literal>
    <justification jstring="[para(214(a,1),8(a,1)),flip(a)].">
      <j1 rule="para" parents="214 8"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="226">
    <literal><![CDATA[
      (x ==> y) + (((x ==> y) ==> y) + (((z ==> (z + y)) ==> (y + (y ==> (x ==> y)))) ==> z)) = z + (y + (y ==> (x ==> y)))
    ]]></literal>
    <justification jstring="[para(95(a,1),225(a,1,2,2,1,1,2,2))].">
      <j1 rule="para" parents="95 225"/>
    </justification>
  </clause>

  <clause id="227">
    <literal><![CDATA[
      ((x v y) + m(y,z + (y ==> x))) + ((x v y) ==> (m(y,z + (y ==> x)) ==> x)) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(85(a,1),224(a,1,2))].">
      <j1 rule="para" parents="85 224"/>
    </justification>
  </clause>

  <clause id="228">
    <literal><![CDATA[
      (x ==> y) + (((x ==> y) ==> y) + (((z ==> (z + y)) ==> y) ==> z)) = z + (y + (y ==> (x ==> y)))
    ]]></literal>
    <justification jstring="[para(95(a,1),226(a,1,2,2,1,2))].">
      <j1 rule="para" parents="95 226"/>
    </justification>
  </clause>

  <clause id="229">
    <literal><![CDATA[
      (x ==> y) + (((x ==> y) ==> y) + (((z ==> (z + y)) ==> y) ==> z)) = z + y
    ]]></literal>
    <justification jstring="[para(95(a,1),228(a,2,2))].">
      <j1 rule="para" parents="95 228"/>
    </justification>
  </clause>

  <clause id="231">
    <literal><![CDATA[
      (((x ==> (x + y)) ==> y) ==> y) + (x + (x ==> ((x ==> (x + y)) ==> y))) = x + y
    ]]></literal>
    <justification jstring="[para(229(a,1),74(a,2))].">
      <j1 rule="para" parents="229 74"/>
    </justification>
  </clause>

  <clause id="233">
    <literal><![CDATA[
      (((x ==> (x + y)) ==> y) ==> y) + (x + 0) = x + y
    ]]></literal>
    <justification jstring="[para(139(a,1),231(a,1,2,2))].">
      <j1 rule="para" parents="139 231"/>
    </justification>
  </clause>

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

  <clause id="236">
    <literal><![CDATA[
      x + (((x ==> (x + y)) ==> y) ==> y) = x + y
    ]]></literal>
    <justification jstring="[para(234(a,1),9(a,1)),flip(a)].">
      <j1 rule="para" parents="234 9"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="238">
    <literal><![CDATA[
      x + (y v m(x,y)) = x + y
    ]]></literal>
    <justification jstring="[para(22(a,2),237(a,1,2,2))].">
      <j1 rule="para" parents="22 237"/>
    </justification>
  </clause>

  <clause id="239">
    <literal><![CDATA[
      m(x,y v m(x,y)) = x ==> (x + y)
    ]]></literal>
    <justification jstring="[para(238(a,1),22(a,2,2))].">
      <j1 rule="para" parents="238 22"/>
    </justification>
  </clause>

  <clause id="240">
    <literal><![CDATA[
      m(x,y v m(x,y)) = m(x,y)
    ]]></literal>
    <justification jstring="[para(239(a,2),22(a,2)),flip(a)].">
      <j1 rule="para" parents="239 22"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

  <clause id="242">
    <literal><![CDATA[
      x v m(y,x) = m(y,x)
    ]]></literal>
    <justification jstring="[hyper(13,a,58,a,b,241,a)].">
      <j1 rule="hyper" parents="13 58 241"/>
    </justification>
  </clause>

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

  <clause id="244">
    <literal><![CDATA[
      m((x v y) + z,y ==> x) = y ==> (x v m(z,x))
    ]]></literal>
    <justification jstring="[para(243(a,1),120(a,2))].">
      <j1 rule="para" parents="243 120"/>
    </justification>
  </clause>

  <clause id="245">
    <literal><![CDATA[
      m((x v y) + z,y ==> x) = y ==> m(z,x)
    ]]></literal>
    <justification jstring="[para(242(a,1),244(a,2,2))].">
      <j1 rule="para" parents="242 244"/>
    </justification>
  </clause>

  <clause id="246">
    <literal><![CDATA[
      m((x v y) + m(y,z),y ==> x) = y ==> (z ==> (m(y,z) + x))
    ]]></literal>
    <justification jstring="[para(245(a,2),154(a,1))].">
      <j1 rule="para" parents="245 154"/>
    </justification>
  </clause>

  <clause id="247">
    <literal><![CDATA[
      (x ==> y) + m((z v x) + (x ==> y),x ==> z) = x ==> (y + (y ==> ((x ==> y) + z)))
    ]]></literal>
    <justification jstring="[para(245(a,2),200(a,1,2))].">
      <j1 rule="para" parents="245 200"/>
    </justification>
  </clause>

  <clause id="248">
    <literal><![CDATA[
      (x ==> (x + y)) + m((z v x) + (x ==> (x + y)),x ==> z) = x ==> ((x + y) + ((x + y) ==> (m(x,y) + z)))
    ]]></literal>
    <justification jstring="[para(22(a,2),247(a,2,2,2,2,1))].">
      <j1 rule="para" parents="22 247"/>
    </justification>
  </clause>

  <clause id="249">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + ((x v y) ==> (m(y,z + (y ==> x)) ==> x))) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(227(a,1),8(a,1)),flip(a)].">
      <j1 rule="para" parents="227 8"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="250">
    <literal><![CDATA[
      (x ==> (x + y)) + m((z v x) + (x ==> (x + y)),x ==> z) = x ==> ((x + y) + (x ==> (y ==> (m(x,y) + z))))
    ]]></literal>
    <justification jstring="[para(85(a,1),248(a,2,2,2))].">
      <j1 rule="para" parents="85 248"/>
    </justification>
  </clause>

  <clause id="251">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + (m(y,z + (y ==> x)) ==> ((x v y) ==> x))) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(92(a,1),249(a,1,2,2))].">
      <j1 rule="para" parents="92 249"/>
    </justification>
  </clause>

  <clause id="252">
    <literal><![CDATA[
      x ==> ((x + y) + m((z v x) + m(x,y),x ==> z)) = (x ==> (x + y)) + m((z v x) + (x ==> (x + y)),x ==> z)
    ]]></literal>
    <justification jstring="[para(246(a,2),250(a,2,2,2)),flip(a)].">
      <j1 rule="para" parents="246 250"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="253">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + (m(y,z + (y ==> x)) ==> (y ==> x))) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(68(a,1),251(a,1,2,2,2))].">
      <j1 rule="para" parents="68 251"/>
    </justification>
  </clause>

  <clause id="254">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + (y ==> (m(y,z + (y ==> x)) ==> x))) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(92(a,1),253(a,1,2,2))].">
      <j1 rule="para" parents="92 253"/>
    </justification>
  </clause>

  <clause id="255">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + (y ==> ((z + (y ==> x)) ==> x))) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(152(a,1),254(a,1,2,2))].">
      <j1 rule="para" parents="152 254"/>
    </justification>
  </clause>

  <clause id="256">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + (y ==> (z ==> ((y ==> x) ==> x)))) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(85(a,1),255(a,1,2,2,2))].">
      <j1 rule="para" parents="85 255"/>
    </justification>
  </clause>

  <clause id="257">
    <literal><![CDATA[
      (x v y) + (m(y,z + (y ==> x)) + 0) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(181(a,1),256(a,1,2,2))].">
      <j1 rule="para" parents="181 256"/>
    </justification>
  </clause>

  <clause id="258">
    <literal><![CDATA[
      (x v y) + m(y,z + (y ==> x)) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(10(a,1),257(a,1,2))].">
      <j1 rule="para" parents="10 257"/>
    </justification>
  </clause>

  <clause id="260">
    <literal><![CDATA[
      x ==> (x + (y + m((z v x) + m(x,y),x ==> z))) = (x ==> (x + y)) + m((z v x) + (x ==> (x + y)),x ==> z)
    ]]></literal>
    <justification jstring="[para(8(a,1),252(a,1,2))].">
      <j1 rule="para" parents="8 252"/>
    </justification>
  </clause>

  <clause id="261">
    <literal><![CDATA[
      m(x,y + m((z v x) + m(x,y),x ==> z)) = (x ==> (x + y)) + m((z v x) + (x ==> (x + y)),x ==> z)
    ]]></literal>
    <justification jstring="[para(260(a,1),22(a,2))].">
      <j1 rule="para" parents="260 22"/>
    </justification>
  </clause>

  <clause id="262">
    <literal><![CDATA[
      m(x,y + m((z v x) + m(x,y),x ==> z)) = m(x,y) + m((z v x) + (x ==> (x + y)),x ==> z)
    ]]></literal>
    <justification jstring="[para(22(a,2),261(a,2,1))].">
      <j1 rule="para" parents="22 261"/>
    </justification>
  </clause>

  <clause id="263">
    <literal><![CDATA[
      m(x,y + m((z v x) + m(x,y),x ==> z)) = m(x,y) + m((z v x) + m(x,y),x ==> z)
    ]]></literal>
    <justification jstring="[para(22(a,2),262(a,2,2,1,2))].">
      <j1 rule="para" parents="22 262"/>
    </justification>
  </clause>

  <clause id="264">
    <literal><![CDATA[
      m(x,y) + m((z v x) + m(x,y),x ==> z) = m(x,y + (x ==> z))
    ]]></literal>
    <justification jstring="[para(263(a,1),209(a,1))].">
      <j1 rule="para" parents="263 209"/>
    </justification>
  </clause>

  <clause id="265">
    <literal><![CDATA[
      (x v y) + m(y,z + (y ==> x)) = (x v y) + (m(y,z) + (y ==> x))
    ]]></literal>
    <justification jstring="[para(264(a,1),155(a,1,2))].">
      <j1 rule="para" parents="264 155"/>
    </justification>
  </clause>

  <clause id="267">
    <literal><![CDATA[
      (x v y) + (m(y,z) + (y ==> x)) = x + m(y + (y ==> x),z)
    ]]></literal>
    <justification jstring="[para(265(a,1),258(a,1))].">
      <j1 rule="para" parents="265 258"/>
    </justification>
  </clause>

  <clause id="268">
    <literal><![CDATA[
      x + m(y + (y ==> x),z) = m(y,z) + x
    ]]></literal>
    <justification jstring="[para(267(a,1),113(a,1))].">
      <j1 rule="para" parents="267 113"/>
    </justification>
  </clause>

  <clause id="269">
    <literal><![CDATA[
      m(x,m(y + (y ==> x),z)) = x ==> (m(y,z) + x)
    ]]></literal>
    <justification jstring="[para(268(a,1),22(a,2,2))].">
      <j1 rule="para" parents="268 22"/>
    </justification>
  </clause>

  <clause id="271">
    <literal><![CDATA[
      m(x,m(y + (y ==> x),z)) = m(x,m(y,z))
    ]]></literal>
    <justification jstring="[para(269(a,2),37(a,2)),flip(a)].">
      <j1 rule="para" parents="269 37"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="272">
    <literal><![CDATA[
      m(x + (x ==> y),z) >= m(y,m(x,z))
    ]]></literal>
    <justification jstring="[para(271(a,1),42(a,2))].">
      <j1 rule="para" parents="271 42"/>
    </justification>
  </clause>

  <clause id="273">
    <literal><![CDATA[
      m(c(x,y),z) >= m(x,m(y,z))
    ]]></literal>
    <justification jstring="[para(36(a,2),272(a,1,1))].">
      <j1 rule="para" parents="36 272"/>
    </justification>
  </clause>

  <clause id="274">
    <literal><![CDATA[
      m(c(x,y),z) = m(x,m(y,z))
    ]]></literal>
    <justification jstring="[hyper(13,a,167,a,b,273,a)].">
      <j1 rule="hyper" parents="13 167 273"/>
    </justification>
  </clause>

  <clause id="275">
    <literal><![CDATA[
      $F
    ]]></literal>
    <attribute><![CDATA[
      answer("main conjecture")
    ]]></attribute>
    <justification jstring="[resolve(274,a,24,a)].">
      <j1 rule="resolve" parents="274 24"/>
    </justification>
  </clause>

</proof>

</proofs>
