PREFIX : <http://josd.github.io/eye/reasoning#>
PREFIX r: <http://www.w3.org/2000/10/swap/reason#>

[] a r:Proof, r:Conjunction;
  r:component <#lemma1>;
  r:gives {
    5 :state (_:sk_2 0).
    5 :instruction (:halt).
  }.

<#lemma1> a r:Inference;
  r:gives {
    5 :state (_:sk_2 0).
    5 :instruction (:halt).
  };
  r:evidence (
    <#lemma2>
    <#lemma3>
  );
  r:rule <#lemma4>.

<#lemma2> a r:Inference;
  r:gives {
    5 :state (_:sk_2 0).
  };
  r:evidence (
    <#lemma5>
    <#lemma6>
  );
  r:rule <#lemma7>.

<#lemma3> a r:Extraction;
  r:gives {
    5 :instruction (:halt).
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma4> a r:Extraction;
  r:gives {
    {?x_0_1 :state (?x_1_1 ?x_2_1).
     ?x_0_1 :instruction (:halt)} => {?x_0_1 :state (?x_1_1 ?x_2_1).
     ?x_0_1 :instruction (:halt)}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmQ.n3>].

<#lemma5> a r:Inference;
  r:gives {
    1 :state (_:sk_2 0).
  };
  r:evidence (
    <#lemma8>
    <#lemma9>
  );
  r:rule <#lemma10>.

<#lemma6> a r:Extraction;
  r:gives {
    1 :instruction (:jpz 2 5 2).
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma7> a r:Extraction;
  r:gives {
    {?x_0_2 :state (?x_1_2 0).
     ?x_0_2 :instruction (:jpz 2 ?x_2_2 ?x_3_2)} => {?x_2_2 :state (?x_1_2 0)}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma8> a r:Inference;
  r:gives {
    4 :state (_:sk_2 0).
  };
  r:evidence (
    <#lemma11>
    <#lemma12>
    <#lemma13>
  );
  r:rule <#lemma14>.

<#lemma9> a r:Extraction;
  r:gives {
    4 :instruction (:goto 1).
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma10> a r:Extraction;
  r:gives {
    {?x_0_3 :state (?x_1_3 ?x_2_3).
     ?x_0_3 :instruction (:goto ?x_3_3)} => {?x_3_3 :state (?x_1_3 ?x_2_3)}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma11> a r:Inference;
  r:gives {
    3 :state (_:sk_1 0).
  };
  r:evidence (
    <#lemma15>
    <#lemma16>
    <#lemma17>
  );
  r:rule <#lemma18>.

<#lemma12> a r:Extraction;
  r:gives {
    3 :instruction (:inc 1 4).
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma13> a r:Inference;
  r:gives {
    _:sk_1 :inc _:sk_2.
  };
  r:evidence (
    <#lemma19>
  );
  r:rule <#lemma20>.

<#lemma14> a r:Extraction;
  r:gives {
    {?x_0_4 :state (?x_1_4 ?x_2_4).
     ?x_0_4 :instruction (:inc 1 ?x_3_4).
     ?x_1_4 :inc ?x_4_4} => {?x_3_4 :state (?x_4_4 ?x_2_4)}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma15> a r:Inference;
  r:gives {
    2 :state (_:sk_1 1).
  };
  r:evidence (
    <#lemma21>
    <#lemma17>
    <#lemma6>
  );
  r:rule <#lemma22>.

<#lemma16> a r:Extraction;
  r:gives {
    2 :instruction (:dec 2 3).
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma17> a r:Extraction;
  r:gives {
    0 :inc 1 .
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma18> a r:Extraction;
  r:gives {
    {?x_0_5 :state (?x_1_5 ?x_2_5).
     ?x_0_5 :instruction (:dec 2 ?x_3_5).
     ?x_4_5 :inc ?x_2_5} => {?x_3_5 :state (?x_1_5 ?x_4_5)}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma19> a r:Inference;
  r:gives {
    _:sk_0 :inc _:sk_1.
  };
  r:evidence (
    <#lemma23>
  );
  r:rule <#lemma20>.

<#lemma20> a r:Extraction;
  r:gives {
    {?x_0_6 :inc ?x_1_6} => {?x_1_6 :inc _:x_2_6}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma21> a r:Inference;
  r:gives {
    1 :state (_:sk_1 1).
  };
  r:evidence (
    <#lemma24>
    <#lemma9>
  );
  r:rule <#lemma10>.

<#lemma22> a r:Extraction;
  r:gives {
    {?x_0_7 :state (?x_1_7 ?x_2_7).
     ?x_3_7 :inc ?x_2_7.
     ?x_0_7 :instruction (:jpz 2 ?x_4_7 ?x_5_7)} => {?x_5_7 :state (?x_1_7 ?x_2_7)}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma23> a r:Inference;
  r:gives {
    4 :inc _:sk_0.
  };
  r:evidence (
    <#lemma25>
  );
  r:rule <#lemma20>.

<#lemma24> a r:Inference;
  r:gives {
    4 :state (_:sk_1 1).
  };
  r:evidence (
    <#lemma26>
    <#lemma12>
    <#lemma19>
  );
  r:rule <#lemma14>.

<#lemma25> a r:Extraction;
  r:gives {
    3 :inc 4 .
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma26> a r:Inference;
  r:gives {
    3 :state (_:sk_0 1).
  };
  r:evidence (
    <#lemma27>
    <#lemma16>
    <#lemma28>
  );
  r:rule <#lemma18>.

<#lemma27> a r:Inference;
  r:gives {
    2 :state (_:sk_0 2).
  };
  r:evidence (
    <#lemma29>
    <#lemma28>
    <#lemma6>
  );
  r:rule <#lemma22>.

<#lemma28> a r:Extraction;
  r:gives {
    1 :inc 2 .
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma29> a r:Inference;
  r:gives {
    1 :state (_:sk_0 2).
  };
  r:evidence (
    <#lemma30>
    <#lemma9>
  );
  r:rule <#lemma10>.

<#lemma30> a r:Inference;
  r:gives {
    4 :state (_:sk_0 2).
  };
  r:evidence (
    <#lemma31>
    <#lemma12>
    <#lemma23>
  );
  r:rule <#lemma14>.

<#lemma31> a r:Inference;
  r:gives {
    3 :state (4 2).
  };
  r:evidence (
    <#lemma32>
    <#lemma16>
    <#lemma33>
  );
  r:rule <#lemma18>.

<#lemma32> a r:Inference;
  r:gives {
    2 :state (4 3).
  };
  r:evidence (
    <#lemma34>
    <#lemma33>
    <#lemma6>
  );
  r:rule <#lemma22>.

<#lemma33> a r:Extraction;
  r:gives {
    2 :inc 3 .
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

<#lemma34> a r:Inference;
  r:gives {
    1 :state (4 3).
  };
  r:evidence (
    <#lemma35>
    <#lemma9>
  );
  r:rule <#lemma10>.

<#lemma35> a r:Inference;
  r:gives {
    4 :state (4 3).
  };
  r:evidence (
    <#lemma36>
    <#lemma12>
    <#lemma25>
  );
  r:rule <#lemma14>.

<#lemma36> a r:Inference;
  r:gives {
    3 :state (3 3).
  };
  r:evidence (
    <#lemma37>
    <#lemma16>
    <#lemma25>
  );
  r:rule <#lemma18>.

<#lemma37> a r:Inference;
  r:gives {
    2 :state (3 4).
  };
  r:evidence (
    <#lemma38>
    <#lemma25>
    <#lemma6>
  );
  r:rule <#lemma22>.

<#lemma38> a r:Extraction;
  r:gives {
    1 :state (3 4).
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/usm/usmP.n3>].

