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

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

<proof number="1" length="17" max_count="19">

<comments><![CDATA[
% Proof 1 at 1.19 (+ 0.01) seconds.
% Length of proof is 17.
% Level of proof is 5.
% Maximum clause weight is 19.
% Given clauses 79.
]]></comments>

  <clause id="1">
    <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">
    <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">
    <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">
    <literal><![CDATA[
      x * f(x,y) * y = y * g(x,y) * x
    ]]></literal>
    <attribute><![CDATA[
      label(general_case)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="5">
    <literal><![CDATA[
      x * g(y,x) * y = y * f(y,x) * x
    ]]></literal>
    <justification jstring="[copy(4),flip(a)].">
      <j1 rule="copy" parents="4"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

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

  <clause id="20">
    <literal><![CDATA[
      b * b0 * x = a * 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="23">
    <literal><![CDATA[
      d * b0 * x = c * a0 * 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="26">
    <literal><![CDATA[
      b * d0 * x = a * c0 * x
    ]]></literal>
    <justification jstring="[para(8(a,1),1(a,1,1)),rewrite(1(4)),flip(a)].">
      <j1 rule="para" parents="8 1"/>
      <j2 rule="rewrite" parents="1"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

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

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

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

  <clause id="2404">
    <literal><![CDATA[
      d * d0 * f(d0,b0) * b0 = c * c0 * f(d0,b0) * b0
    ]]></literal>
    <justification jstring="[para(2192(a,1),23(a,2,2)),rewrite(5(8))].">
      <j1 rule="para" parents="2192 23"/>
      <j2 rule="rewrite" parents="5"/>
    </justification>
  </clause>

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

</proof>

</proofs>
