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

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

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

<comments><![CDATA[
% Proof 1 at 0.04 (+ 0.00) seconds.
% Length of proof is 17.
% Level of proof is 4.
% Maximum clause weight is 17.
% Given clauses 20.
]]></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="4">
    <literal><![CDATA[
      x * y = y * x
    ]]></literal>
    <attribute><![CDATA[
      label(commutativity)
    ]]></attribute>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

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

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

  <clause id="7">
    <literal><![CDATA[
      b0 * d = a0 * c
    ]]></literal>
    <justification jstring="[copy(6),rewrite(4(3),4(6))].">
      <j1 rule="copy" parents="6"/>
      <j2 rule="rewrite" parents="4 4"/>
    </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="10">
    <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="12">
    <literal><![CDATA[
      x * y * z = y * x * z
    ]]></literal>
    <justification jstring="[para(4(a,1),1(a,1,1)),rewrite(1(2))].">
      <j1 rule="para" parents="4 1"/>
      <j2 rule="rewrite" parents="1"/>
    </justification>
  </clause>

  <clause id="15">
    <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="19">
    <literal><![CDATA[
      b0 * d * x = a0 * c * 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="23">
    <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 * y != x * y * c * c0
    ]]></literal>
    <justification jstring="[ur(2,b,1,a,c,9,a),rewrite(12(5),4(4))].">
      <j1 rule="ur" parents="2 1 9"/>
      <j2 rule="rewrite" parents="12 4"/>
    </justification>
  </clause>

  <clause id="166">
    <literal><![CDATA[
      a0 * b * c * d0 * x * y != a * a0 * x * y * c * c0
    ]]></literal>
    <justification jstring="[ur(10,b,15,a,c,30,a),rewrite(19(8),12(9))].">
      <j1 rule="ur" parents="10 15 30"/>
      <j2 rule="rewrite" parents="19 12"/>
    </justification>
  </clause>

  <clause id="216">
    <literal><![CDATA[
      b * x * d0 * y = x * a * c0 * y
    ]]></literal>
    <justification jstring="[para(23(a,1),12(a,1,2)),flip(a)].">
      <j1 rule="para" parents="23 12"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="222">
    <literal><![CDATA[
      $F
    ]]></literal>
    <justification jstring="[back_rewrite(166),rewrite(216(8),12(8),12(9)),xx(a)].">
      <j1 rule="back_rewrite" parents="166"/>
      <j2 rule="rewrite" parents="216 12 12"/>
      <j2 rule="xx"/>
    </justification>
  </clause>

</proof>

</proofs>
