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

<heading><![CDATA[
Prover9 (32) version 2009-02A, February 2009.
Process 11696 was started by mccune on cleo,
Wed Feb 25 09:37:09 2009
The command was "/home/mccune/bin/prover9 -f wang-eq.in wang3-eq.in".
]]></heading>

<proof number="1" length="113" max_count="25">

<comments><![CDATA[
% Proof 1 at 0.05 (+ 0.01) seconds.
% Length of proof is 113.
% Level of proof is 65.
% Maximum clause weight is 25.
% Given clauses 204.

]]></comments>

  <clause id="1" type="assumption">
    <literal><![CDATA[
      x = m
    ]]></literal>
    <literal><![CDATA[
      p(x,m)
    ]]></literal>
    <literal><![CDATA[
      y = m
    ]]></literal>
    <literal><![CDATA[
      y = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,y)
    ]]></literal>
    <literal><![CDATA[
      -p(y,x)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="2">
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      p(x,m)
    ]]></literal>
    <literal><![CDATA[
      m = y
    ]]></literal>
    <literal><![CDATA[
      y = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,y)
    ]]></literal>
    <literal><![CDATA[
      -p(y,x)
    ]]></literal>
    <justification jstring="[copy(1),flip(a),flip(c)].">
      <j1 rule="copy" parents="1"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="3" type="assumption">
    <literal><![CDATA[
      x = b
    ]]></literal>
    <literal><![CDATA[
      -p(x,b)
    ]]></literal>
    <literal><![CDATA[
      y = b
    ]]></literal>
    <literal><![CDATA[
      y = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,y)
    ]]></literal>
    <literal><![CDATA[
      -p(y,x)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="4">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,b)
    ]]></literal>
    <literal><![CDATA[
      b = y
    ]]></literal>
    <literal><![CDATA[
      y = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,y)
    ]]></literal>
    <literal><![CDATA[
      -p(y,x)
    ]]></literal>
    <justification jstring="[copy(3),flip(a),flip(c)].">
      <j1 rule="copy" parents="3"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="5" type="assumption">
    <literal><![CDATA[
      x = k
    ]]></literal>
    <literal><![CDATA[
      x = m
    ]]></literal>
    <literal><![CDATA[
      x = b
    ]]></literal>
    <literal><![CDATA[
      -p(x,k)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="6">
    <literal><![CDATA[
      k = x
    ]]></literal>
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,k)
    ]]></literal>
    <justification jstring="[copy(5),flip(a),flip(b),flip(c)].">
      <j1 rule="copy" parents="5"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="7" type="assumption">
    <literal><![CDATA[
      x = m
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      f(x) != m
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="8">
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      f(x) != m
    ]]></literal>
    <justification jstring="[copy(7),flip(a)].">
      <j1 rule="copy" parents="7"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="9" type="assumption">
    <literal><![CDATA[
      x = m
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      f(x) != x
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="10">
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      f(x) != x
    ]]></literal>
    <justification jstring="[copy(9),flip(a)].">
      <j1 rule="copy" parents="9"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="11" type="assumption">
    <literal><![CDATA[
      x = m
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      p(x,f(x))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="12">
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      p(x,f(x))
    ]]></literal>
    <justification jstring="[copy(11),flip(a)].">
      <j1 rule="copy" parents="11"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="13" type="assumption">
    <literal><![CDATA[
      x = m
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      p(f(x),x)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="14">
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <literal><![CDATA[
      p(f(x),x)
    ]]></literal>
    <justification jstring="[copy(13),flip(a)].">
      <j1 rule="copy" parents="13"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="15" type="assumption">
    <literal><![CDATA[
      x = b
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      g(x) != b
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="16">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      g(x) != b
    ]]></literal>
    <justification jstring="[copy(15),flip(a)].">
      <j1 rule="copy" parents="15"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="17" type="assumption">
    <literal><![CDATA[
      x = b
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      g(x) != x
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="18">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      g(x) != x
    ]]></literal>
    <justification jstring="[copy(17),flip(a)].">
      <j1 rule="copy" parents="17"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="19" type="assumption">
    <literal><![CDATA[
      x = b
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      p(x,g(x))
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="20">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      p(x,g(x))
    ]]></literal>
    <justification jstring="[copy(19),flip(a)].">
      <j1 rule="copy" parents="19"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="21" type="assumption">
    <literal><![CDATA[
      x = b
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      p(g(x),x)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="22">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      p(x,b)
    ]]></literal>
    <literal><![CDATA[
      p(g(x),x)
    ]]></literal>
    <justification jstring="[copy(21),flip(a)].">
      <j1 rule="copy" parents="21"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="23" type="assumption">
    <literal><![CDATA[
      x = k
    ]]></literal>
    <literal><![CDATA[
      x != m
    ]]></literal>
    <literal><![CDATA[
      p(x,k)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="24">
    <literal><![CDATA[
      k = x
    ]]></literal>
    <literal><![CDATA[
      m != x
    ]]></literal>
    <literal><![CDATA[
      p(x,k)
    ]]></literal>
    <justification jstring="[copy(23),flip(a),flip(b)].">
      <j1 rule="copy" parents="23"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="25" type="assumption">
    <literal><![CDATA[
      x = k
    ]]></literal>
    <literal><![CDATA[
      x != b
    ]]></literal>
    <literal><![CDATA[
      p(x,k)
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="26">
    <literal><![CDATA[
      k = x
    ]]></literal>
    <literal><![CDATA[
      b != x
    ]]></literal>
    <literal><![CDATA[
      p(x,k)
    ]]></literal>
    <justification jstring="[copy(25),flip(a),flip(b)].">
      <j1 rule="copy" parents="25"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="27" type="assumption">
    <literal><![CDATA[
      m != b
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="28" type="assumption">
    <literal><![CDATA[
      x = j
    ]]></literal>
    <literal><![CDATA[
      -p(x,j)
    ]]></literal>
    <literal><![CDATA[
      x = k
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="29">
    <literal><![CDATA[
      j = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,j)
    ]]></literal>
    <literal><![CDATA[
      k = x
    ]]></literal>
    <justification jstring="[copy(28),flip(a),flip(c)].">
      <j1 rule="copy" parents="28"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="30" type="assumption">
    <literal><![CDATA[
      x = j
    ]]></literal>
    <literal><![CDATA[
      p(x,j)
    ]]></literal>
    <literal><![CDATA[
      x != k
    ]]></literal>
    <justification jstring="[assumption].">
      <j1 rule="assumption"/>
    </justification>
  </clause>

  <clause id="31">
    <literal><![CDATA[
      j = x
    ]]></literal>
    <literal><![CDATA[
      p(x,j)
    ]]></literal>
    <literal><![CDATA[
      k != x
    ]]></literal>
    <justification jstring="[copy(30),flip(a),flip(c)].">
      <j1 rule="copy" parents="30"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="39">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      g(k) = k
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <justification jstring="[resolve(22,c,6,d),flip(a),flip(c),flip(d),flip(e)].">
      <j1 rule="resolve" parents="22 6"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="43">
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(m,k)
    ]]></literal>
    <justification jstring="[xx_res(24,b)].">
      <j1 rule="xx_res" parents="24"/>
    </justification>
  </clause>

  <clause id="44">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      p(b,k)
    ]]></literal>
    <justification jstring="[xx_res(26,b)].">
      <j1 rule="xx_res" parents="26"/>
    </justification>
  </clause>

  <clause id="45">
    <literal><![CDATA[
      g(j) = j
    ]]></literal>
    <literal><![CDATA[
      g(j) = k
    ]]></literal>
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      p(j,b)
    ]]></literal>
    <justification jstring="[resolve(29,b,22,c),flip(a),flip(b),flip(c)].">
      <j1 rule="resolve" parents="29 22"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="46">
    <literal><![CDATA[
      j = k
    ]]></literal>
    <literal><![CDATA[
      p(k,j)
    ]]></literal>
    <justification jstring="[xx_res(31,c)].">
      <j1 rule="xx_res" parents="31"/>
    </justification>
  </clause>

  <clause id="48">
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <literal><![CDATA[
      -p(k,m)
    ]]></literal>
    <justification jstring="[resolve(43,b,4,f),flip(b),flip(d),flip(e),merge(e),unit_del(d,27)].">
      <j1 rule="resolve" parents="43 4"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="50">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(44,b,2,f),flip(b),flip(e),merge(e),unit_del(d,27)].">
      <j1 rule="resolve" parents="44 2"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="70">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = k
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(39,b,50,d),merge(e)].">
      <j1 rule="resolve" parents="39 50"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="88">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = k
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(70,f,48,d),merge(f),merge(g)].">
      <j1 rule="resolve" parents="70 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="100">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = k
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <justification jstring="[resolve(88,f,39,b),merge(f),merge(g),merge(h),merge(i)].">
      <j1 rule="resolve" parents="88 39"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="101">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(100,b,18,c),flip(e),merge(e)].">
      <j1 rule="resolve" parents="100 18"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="104">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(101,e,50,d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="101 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="112">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(104,e,48,d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="104 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="119">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <justification jstring="[resolve(112,e,101,e),merge(e),merge(f),merge(g),merge(h)].">
      <j1 rule="resolve" parents="112 101"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="121">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[para(119(b,1),20(c,2)),flip(d),merge(d)].">
      <j1 rule="para" parents="119 20"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="124">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      p(f(k),k)
    ]]></literal>
    <justification jstring="[resolve(121,e,14,b),flip(e),merge(e)].">
      <j1 rule="resolve" parents="121 14"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="125">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      p(k,f(k))
    ]]></literal>
    <justification jstring="[resolve(121,e,12,b),flip(e),merge(e)].">
      <j1 rule="resolve" parents="121 12"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="126">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      f(k) != k
    ]]></literal>
    <justification jstring="[resolve(121,e,10,b),flip(e),merge(e)].">
      <j1 rule="resolve" parents="121 10"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="127">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      f(k) != m
    ]]></literal>
    <justification jstring="[resolve(121,e,8,b),flip(e),merge(e)].">
      <j1 rule="resolve" parents="121 8"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="130">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <justification jstring="[resolve(124,e,6,d),flip(e),flip(f),flip(g)].">
      <j1 rule="resolve" parents="124 6"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="161">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(130,d,50,d),merge(g),merge(h)].">
      <j1 rule="resolve" parents="130 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="169">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(161,g,48,d),merge(g),merge(h)].">
      <j1 rule="resolve" parents="161 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="172">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <justification jstring="[resolve(169,g,130,d),merge(g),merge(h),merge(i),merge(j),merge(k),merge(l)].">
      <j1 rule="resolve" parents="169 130"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="173">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(172,b,16,c),flip(f),merge(f)].">
      <j1 rule="resolve" parents="172 16"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="176">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(173,f,50,d),merge(f),merge(g)].">
      <j1 rule="resolve" parents="173 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="186">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(176,f,48,d),merge(f),merge(g)].">
      <j1 rule="resolve" parents="176 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="189">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = k
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <justification jstring="[resolve(186,f,173,f),merge(f),merge(g),merge(h),merge(i),merge(j)].">
      <j1 rule="resolve" parents="186 173"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="190">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(189,c,126,e),merge(e),merge(g)].">
      <j1 rule="resolve" parents="189 126"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="196">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(190,f,50,d),merge(f),merge(g)].">
      <j1 rule="resolve" parents="190 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="204">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(196,f,48,d),merge(f),merge(g)].">
      <j1 rule="resolve" parents="196 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="208">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <justification jstring="[resolve(204,f,190,f),merge(f),merge(g),merge(h),merge(i),merge(j)].">
      <j1 rule="resolve" parents="204 190"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="209">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(208,e,16,c),flip(e),merge(e)].">
      <j1 rule="resolve" parents="208 16"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="212">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(209,e,50,d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="209 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="220">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(212,e,48,d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="212 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="224">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <justification jstring="[resolve(220,e,209,e),merge(e),merge(f),merge(g),merge(h)].">
      <j1 rule="resolve" parents="220 209"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="225">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(224,c,127,e),merge(d),merge(f)].">
      <j1 rule="resolve" parents="224 127"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="230">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(225,e,50,d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="225 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="238">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(230,e,48,d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="230 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="243">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <justification jstring="[resolve(238,e,225,e),merge(e),merge(f),merge(g),merge(h)].">
      <j1 rule="resolve" parents="238 225"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="244">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(243,d,16,c),flip(d),merge(d)].">
      <j1 rule="resolve" parents="243 16"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="247">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(244,d,50,d),merge(d),merge(e)].">
      <j1 rule="resolve" parents="244 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="255">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(247,d,48,d),merge(d),merge(e)].">
      <j1 rule="resolve" parents="247 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="260">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      f(k) = b
    ]]></literal>
    <justification jstring="[resolve(255,d,244,d),merge(d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="255 244"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="263">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[para(260(c,1),125(e,2)),merge(c),merge(e),merge(g)].">
      <j1 rule="para" parents="260 125"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="265">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(263,d,50,d),merge(d),merge(e)].">
      <j1 rule="resolve" parents="263 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="273">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(265,d,48,d),merge(d),merge(e)].">
      <j1 rule="resolve" parents="265 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="279">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      g(k) = b
    ]]></literal>
    <justification jstring="[resolve(273,d,263,d),merge(d),merge(e),merge(f)].">
      <j1 rule="resolve" parents="273 263"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="280">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,b)
    ]]></literal>
    <justification jstring="[resolve(279,c,16,c),flip(c),merge(c)].">
      <j1 rule="resolve" parents="279 16"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="283">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      p(k,m)
    ]]></literal>
    <justification jstring="[resolve(280,c,50,d),merge(c),merge(d)].">
      <j1 rule="resolve" parents="280 50"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="292">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <literal><![CDATA[
      -p(k,b)
    ]]></literal>
    <justification jstring="[resolve(283,c,48,d),merge(c),merge(d)].">
      <j1 rule="resolve" parents="283 48"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="297">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = m
    ]]></literal>
    <justification jstring="[resolve(292,c,280,c),merge(c),merge(d)].">
      <j1 rule="resolve" parents="292 280"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="299">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      k = x
    ]]></literal>
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,m)
    ]]></literal>
    <justification jstring="[para(297(b,1),6(d,2))].">
      <j1 rule="para" parents="297 6"/>
    </justification>
  </clause>

  <clause id="301">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      p(b,m)
    ]]></literal>
    <justification jstring="[para(297(b,1),44(b,2)),merge(b)].">
      <j1 rule="para" parents="297 44"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="313">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      p(f(b),b)
    ]]></literal>
    <justification jstring="[resolve(301,b,14,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="301 14"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="314">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      p(b,f(b))
    ]]></literal>
    <justification jstring="[resolve(301,b,12,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="301 12"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="315">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) != b
    ]]></literal>
    <justification jstring="[resolve(301,b,10,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="301 10"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="316">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) != m
    ]]></literal>
    <justification jstring="[resolve(301,b,8,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="301 8"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="318">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = m
    ]]></literal>
    <literal><![CDATA[
      p(f(b),m)
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <literal><![CDATA[
      -p(b,f(b))
    ]]></literal>
    <justification jstring="[resolve(313,b,2,e),flip(b),flip(e),unit_del(d,27)].">
      <j1 rule="resolve" parents="313 2"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="337">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = m
    ]]></literal>
    <literal><![CDATA[
      p(f(b),m)
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <justification jstring="[resolve(318,e,314,b),merge(e)].">
      <j1 rule="resolve" parents="318 314"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="341">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = m
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = k
    ]]></literal>
    <justification jstring="[resolve(337,c,299,e),flip(e),flip(f),flip(g),merge(d),merge(f),merge(g)].">
      <j1 rule="resolve" parents="337 299"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="349">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = m
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <justification jstring="[para(297(b,1),341(d,2)),merge(b),merge(e)].">
      <j1 rule="para" parents="297 341"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="350">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <justification jstring="[resolve(349,b,316,b),merge(c)].">
      <j1 rule="resolve" parents="349 316"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="351">
    <literal><![CDATA[
      k = b
    ]]></literal>
    <justification jstring="[resolve(350,b,315,b),merge(b)].">
      <j1 rule="resolve" parents="350 315"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="362">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      p(b,j)
    ]]></literal>
    <justification jstring="[back_rewrite(46),rewrite([351(2),351(4)])].">
      <j1 rule="back_rewrite" parents="46"/>
      <j2 rule="rewrite" parents="351 351"/>
    </justification>
  </clause>

  <clause id="363">
    <literal><![CDATA[
      g(j) = j
    ]]></literal>
    <literal><![CDATA[
      g(j) = b
    ]]></literal>
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      p(j,b)
    ]]></literal>
    <justification jstring="[back_rewrite(45),rewrite([351(7)])].">
      <j1 rule="back_rewrite" parents="45"/>
      <j2 rule="rewrite" parents="351"/>
    </justification>
  </clause>

  <clause id="364">
    <literal><![CDATA[
      p(m,b)
    ]]></literal>
    <justification jstring="[back_rewrite(43),rewrite([351(1),351(5)]),flip(a),unit_del(a,27)].">
      <j1 rule="back_rewrite" parents="43"/>
      <j2 rule="rewrite" parents="351 351"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="366">
    <literal><![CDATA[
      j = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,j)
    ]]></literal>
    <literal><![CDATA[
      b = x
    ]]></literal>
    <justification jstring="[back_rewrite(29),rewrite([351(5)])].">
      <j1 rule="back_rewrite" parents="29"/>
      <j2 rule="rewrite" parents="351"/>
    </justification>
  </clause>

  <clause id="368">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      m = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,b)
    ]]></literal>
    <justification jstring="[back_rewrite(6),rewrite([351(1),351(7)]),merge(c)].">
      <j1 rule="back_rewrite" parents="6"/>
      <j2 rule="rewrite" parents="351 351"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="382">
    <literal><![CDATA[
      g(j) = j
    ]]></literal>
    <literal><![CDATA[
      g(j) = b
    ]]></literal>
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      j = m
    ]]></literal>
    <justification jstring="[resolve(363,d,368,c),flip(d),flip(e),merge(d)].">
      <j1 rule="resolve" parents="363 368"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="383">
    <literal><![CDATA[
      g(j) = b
    ]]></literal>
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      j = m
    ]]></literal>
    <literal><![CDATA[
      p(j,b)
    ]]></literal>
    <justification jstring="[resolve(382,a,18,c),flip(d),merge(d)].">
      <j1 rule="resolve" parents="382 18"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="384">
    <literal><![CDATA[
      g(j) = b
    ]]></literal>
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      j = m
    ]]></literal>
    <justification jstring="[resolve(383,d,368,c),flip(d),flip(e),merge(d),merge(e)].">
      <j1 rule="resolve" parents="383 368"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="385">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      j = m
    ]]></literal>
    <literal><![CDATA[
      p(j,b)
    ]]></literal>
    <justification jstring="[resolve(384,a,16,c),flip(c),merge(c)].">
      <j1 rule="resolve" parents="384 16"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="387">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      j = m
    ]]></literal>
    <justification jstring="[resolve(385,c,368,c),flip(c),flip(d),merge(c),merge(d)].">
      <j1 rule="resolve" parents="385 368"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
      <j2 rule="merge"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="389">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      p(b,m)
    ]]></literal>
    <justification jstring="[para(387(b,1),362(b,2)),merge(b)].">
      <j1 rule="para" parents="387 362"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="391">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      p(f(b),b)
    ]]></literal>
    <justification jstring="[resolve(389,b,14,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="389 14"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="393">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      f(b) != b
    ]]></literal>
    <justification jstring="[resolve(389,b,10,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="389 10"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="394">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      f(b) != m
    ]]></literal>
    <justification jstring="[resolve(389,b,8,b),unit_del(b,27)].">
      <j1 rule="resolve" parents="389 8"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

  <clause id="395">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = m
    ]]></literal>
    <justification jstring="[resolve(391,b,368,c),flip(b),flip(c)].">
      <j1 rule="resolve" parents="391 368"/>
      <j2 rule="flip"/>
      <j2 rule="flip"/>
    </justification>
  </clause>

  <clause id="397">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <literal><![CDATA[
      f(b) = b
    ]]></literal>
    <justification jstring="[resolve(395,c,394,b),merge(c)].">
      <j1 rule="resolve" parents="395 394"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="398">
    <literal><![CDATA[
      j = b
    ]]></literal>
    <justification jstring="[resolve(397,b,393,b),merge(b)].">
      <j1 rule="resolve" parents="397 393"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="399">
    <literal><![CDATA[
      b = x
    ]]></literal>
    <literal><![CDATA[
      -p(x,b)
    ]]></literal>
    <justification jstring="[back_rewrite(366),rewrite([398(1),398(3)]),merge(c)].">
      <j1 rule="back_rewrite" parents="366"/>
      <j2 rule="rewrite" parents="398 398"/>
      <j2 rule="merge"/>
    </justification>
  </clause>

  <clause id="401">
    <literal><![CDATA[
      $F
    ]]></literal>
    <justification jstring="[resolve(399,b,364,a),flip(a),unit_del(a,27)].">
      <j1 rule="resolve" parents="399 364"/>
      <j2 rule="flip"/>
      <j2 rule="unit_del" parents="27"/>
    </justification>
  </clause>

</proof>

</proofs>
