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

<heading><![CDATA[
Prover9 (32) version November-2006, November 2006.
Process 3900 was started by mccune on cleo.thornwood,
Wed Nov 22 11:24:34 2006
The command was "/home/mccune/bin/prover9 -f quot-xy3a.in".
]]></heading>

<proof number="1" length="23" max_count="27">

<comments><![CDATA[
% Proof 1 at 2.52 (+ 0.02) seconds.
% Length of proof is 23.
% Level of proof is 7.
% Maximum clause weight is 27.
% Given clauses 217.
]]></comments>

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

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

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

  <clause id="4" type="assumption">
    <literal><![CDATA[
      x * y * x * y * x * y = x * x * x * y * y * y
    ]]></literal>
    <attribute><![CDATA[
      label("(xy)^3 = x^3y^3")
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="5" type="assumption">
    <literal><![CDATA[
      b * b0 = a * a0
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="6" type="assumption">
    <literal><![CDATA[
      d * b0 = c * a0
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="7" type="assumption">
    <literal><![CDATA[
      b * d0 = a * c0
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="8" type="assumption">
    <literal><![CDATA[
      d * d0 != c * c0
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

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

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

  <clause id="11">
    <literal><![CDATA[
      x * y * x * y * x = y * y * x * x * x
    ]]></literal>
    <justification jstring="[hyper(2,a,xx,b,4,a),flip(a)].">
      <j1 rule="hyper" parents="2 4"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="22">
    <literal><![CDATA[
      b * b0 * x = a * a0 * x
    ]]></literal>
    <justification jstring="[para(5(a,1),1(a,1,1)),rewrite(1(4)),flip(a)].">
      <j1 rule="para" parents="5 1"/>
      <j2 rule="rewrite" parents="1"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="26">
    <literal><![CDATA[
      d * b0 * x = c * a0 * x
    ]]></literal>
    <justification jstring="[para(6(a,1),1(a,1,1)),rewrite(1(4)),flip(a)].">
      <j1 rule="para" parents="6 1"/>
      <j2 rule="rewrite" parents="1"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="30">
    <literal><![CDATA[
      b * d0 * x = a * c0 * x
    ]]></literal>
    <justification jstring="[para(7(a,1),1(a,1,1)),rewrite(1(4)),flip(a)].">
      <j1 rule="para" parents="7 1"/>
      <j2 rule="rewrite" parents="1"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="51">
    <literal><![CDATA[
      a * c0 * d0 * d0 * x * x * x = a * c0 * x * d0 * x * d0 * x
    ]]></literal>
    <justification jstring="[para(4(a,1),30(a,1,2)),rewrite(30(10))].">
      <j1 rule="para" parents="4 30"/>
      <j2 rule="rewrite" parents="30"/>
    </justification>
  </clause>

  <clause id="76">
    <literal><![CDATA[
      x * y * z != u
    ]]></literal>
    <literal><![CDATA[
      v * w * z != u
    ]]></literal>
    <literal><![CDATA[
      x * y = v * w
    ]]></literal>
    <justification jstring="[para(1(a,1),10(b,1))].">
      <j1 rule="para" parents="1 10"/>
    </justification>
  </clause>

  <clause id="112">
    <literal><![CDATA[
      a * a0 * x * b0 * x * b0 = b * x * x * b0 * b0 * b0
    ]]></literal>
    <justification jstring="[para(11(a,1),22(a,1,2)),flip(a)].">
      <j1 rule="para" parents="11 22"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="959">
    <literal><![CDATA[
      d0 * d0 * x * x * x = x * d0 * x * d0 * x
    ]]></literal>
    <justification jstring="[hyper(9,a,xx,b,51,a),flip(a)].">
      <j1 rule="hyper" parents="9 51"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="981">
    <literal><![CDATA[
      d * d0 * d0 * b0 * b0 * b0 = c * a0 * d0 * b0 * d0 * b0
    ]]></literal>
    <justification jstring="[para(959(a,2),26(a,1,2))].">
      <j1 rule="para" parents="959 26"/>
    </justification>
  </clause>

  <clause id="1753">
    <literal><![CDATA[
      a0 * d0 * b0 * d0 * b0 = c0 * d0 * b0 * b0 * b0
    ]]></literal>
    <justification jstring="[hyper(2,a,30,a(flip),b,112,a),flip(a)].">
      <j1 rule="hyper" parents="2 30 112"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="1795">
    <literal><![CDATA[
      d * d0 * d0 * b0 * b0 * b0 = c * c0 * d0 * b0 * b0 * b0
    ]]></literal>
    <justification jstring="[back_rewrite(981),rewrite(1753(21))].">
      <j1 rule="back_rewrite" parents="981"/>
      <j2 rule="rewrite" parents="1753"/>
    </justification>
  </clause>

  <clause id="3552">
    <literal><![CDATA[
      d * d0 = c * c0
    ]]></literal>
    <justification jstring="[hyper(76,a,xx,b,1795,a),flip(a)].">
      <j1 rule="hyper" parents="76 1795"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="3553">
    <literal><![CDATA[
      $F
    ]]></literal>
    <justification jstring="[resolve(3552,a,8,a)].">
      <j1 rule="resolve" parents="3552 8"/>
    </justification>
  </clause>

</proof>

</proofs>
