@prefix skolem: <https://eyereasoner.github.io/.well-known/genid/8b98b360-9a70-4845-b52c-c675af60ad01#>.
@prefix r: <http://www.w3.org/2000/10/swap/reason#>.
@prefix : <https://eyereasoner.github.io/eye/reasoning#>.
@prefix n3: <http://www.w3.org/2004/06/rei#>.
@prefix var: <http://www.w3.org/2000/10/swap/var#>.

skolem:proof a r:Proof, r:Conjunction;
    r:component skolem:lemma1;
    r:gives {
        5 :state (_:sk_2 0).
        5 :instruction (:halt).
    }.

skolem:lemma1 a r:Inference;
    r:gives {
        5 :state (_:sk_2 0).
        5 :instruction (:halt).
    };
    r:evidence (
        skolem:lemma2
        skolem:lemma3
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 5];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_2"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 0];
    r:rule skolem:lemma4.

skolem:lemma2 a r:Inference;
    r:gives {
        5 :state (_:sk_2 0).
    };
    r:evidence (
        skolem:lemma5
        skolem:lemma6
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_2"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 5];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 2];
    r:rule skolem:lemma7.

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

skolem:lemma4 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2. {
            var:x_0 :state (var:x_1 var:x_2).
            var:x_0 :instruction (:halt).
        } => {
            var:x_0 :state (var:x_1 var:x_2).
            var:x_0 :instruction (:halt).
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmQ.n3>].

skolem:lemma5 a r:Inference;
    r:gives {
        1 :state (_:sk_2 0).
    };
    r:evidence (
        skolem:lemma8
        skolem:lemma9
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_2"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 0];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 1];
    r:rule skolem:lemma10.

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

skolem:lemma7 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2, var:x_3. {
            var:x_0 :state (var:x_1 0).
            var:x_0 :instruction (:jpz 2 var:x_2 var:x_3).
        } => {
            var:x_2 :state (var:x_1 0).
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmP.n3>].

skolem:lemma8 a r:Inference;
    r:gives {
        4 :state (_:sk_2 0).
    };
    r:evidence (
        skolem:lemma11
        skolem:lemma12
        skolem:lemma13
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 0];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_2"]];
    r:rule skolem:lemma14.

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

skolem:lemma10 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2, var:x_3. {
            var:x_0 :state (var:x_1 var:x_2).
            var:x_0 :instruction (:goto var:x_3).
        } => {
            var:x_3 :state (var:x_1 var:x_2).
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmP.n3>].

skolem:lemma11 a r:Inference;
    r:gives {
        3 :state (_:sk_1 0).
    };
    r:evidence (
        skolem:lemma15
        skolem:lemma16
        skolem:lemma17
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 0];
    r:rule skolem:lemma18.

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

skolem:lemma13 a r:Inference;
    r:gives {
        _:sk_1 :inc _:sk_2.
    };
    r:evidence (
        skolem:lemma19
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_2"]];
    r:rule skolem:lemma20.

skolem:lemma14 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2, var:x_3, var:x_4. {
            var:x_0 :state (var:x_1 var:x_2).
            var:x_0 :instruction (:inc 1 var:x_3).
            var:x_1 :inc var:x_4.
        } => {
            var:x_3 :state (var:x_4 var:x_2).
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmP.n3>].

skolem:lemma15 a r:Inference;
    r:gives {
        2 :state (_:sk_1 1).
    };
    r:evidence (
        skolem:lemma21
        skolem:lemma17
        skolem:lemma6
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 0];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 5];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_5"]; r:boundTo 2];
    r:rule skolem:lemma22.

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

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

skolem:lemma18 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2, var:x_3, var:x_4. {
            var:x_0 :state (var:x_1 var:x_2).
            var:x_0 :instruction (:dec 2 var:x_3).
            var:x_4 :inc var:x_2.
        } => {
            var:x_3 :state (var:x_1 var:x_4).
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmP.n3>].

skolem:lemma19 a r:Inference;
    r:gives {
        _:sk_0 :inc _:sk_1.
    };
    r:evidence (
        skolem:lemma23
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:rule skolem:lemma20.

skolem:lemma20 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1. @forSome var:x_2. {
            var:x_0 :inc var:x_1.
        } => {
            var:x_1 :inc var:x_2.
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmP.n3>].

skolem:lemma21 a r:Inference;
    r:gives {
        1 :state (_:sk_1 1).
    };
    r:evidence (
        skolem:lemma24
        skolem:lemma9
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 1];
    r:rule skolem:lemma10.

skolem:lemma22 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2, var:x_3, var:x_4, var:x_5. {
            var:x_0 :state (var:x_1 var:x_2).
            var:x_3 :inc var:x_2.
            var:x_0 :instruction (:jpz 2 var:x_4 var:x_5).
        } => {
            var:x_5 :state (var:x_1 var:x_2).
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/usm/usmP.n3>].

skolem:lemma23 a r:Inference;
    r:gives {
        4 :inc _:sk_0.
    };
    r:evidence (
        skolem:lemma25
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:rule skolem:lemma20.

skolem:lemma24 a r:Inference;
    r:gives {
        4 :state (_:sk_1 1).
    };
    r:evidence (
        skolem:lemma26
        skolem:lemma12
        skolem:lemma19
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_1"]];
    r:rule skolem:lemma14.

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

skolem:lemma26 a r:Inference;
    r:gives {
        3 :state (_:sk_0 1).
    };
    r:evidence (
        skolem:lemma27
        skolem:lemma16
        skolem:lemma28
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 1];
    r:rule skolem:lemma18.

skolem:lemma27 a r:Inference;
    r:gives {
        2 :state (_:sk_0 2).
    };
    r:evidence (
        skolem:lemma29
        skolem:lemma28
        skolem:lemma6
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 5];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_5"]; r:boundTo 2];
    r:rule skolem:lemma22.

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

skolem:lemma29 a r:Inference;
    r:gives {
        1 :state (_:sk_0 2).
    };
    r:evidence (
        skolem:lemma30
        skolem:lemma9
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 1];
    r:rule skolem:lemma10.

skolem:lemma30 a r:Inference;
    r:gives {
        4 :state (_:sk_0 2).
    };
    r:evidence (
        skolem:lemma31
        skolem:lemma12
        skolem:lemma23
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo [ a r:Existential; n3:nodeId "_:sk_0"]];
    r:rule skolem:lemma14.

skolem:lemma31 a r:Inference;
    r:gives {
        3 :state (4 2).
    };
    r:evidence (
        skolem:lemma32
        skolem:lemma16
        skolem:lemma33
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 2];
    r:rule skolem:lemma18.

skolem:lemma32 a r:Inference;
    r:gives {
        2 :state (4 3).
    };
    r:evidence (
        skolem:lemma34
        skolem:lemma33
        skolem:lemma6
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 5];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_5"]; r:boundTo 2];
    r:rule skolem:lemma22.

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

skolem:lemma34 a r:Inference;
    r:gives {
        1 :state (4 3).
    };
    r:evidence (
        skolem:lemma35
        skolem:lemma9
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 1];
    r:rule skolem:lemma10.

skolem:lemma35 a r:Inference;
    r:gives {
        4 :state (4 3).
    };
    r:evidence (
        skolem:lemma36
        skolem:lemma12
        skolem:lemma25
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 4];
    r:rule skolem:lemma14.

skolem:lemma36 a r:Inference;
    r:gives {
        3 :state (3 3).
    };
    r:evidence (
        skolem:lemma37
        skolem:lemma16
        skolem:lemma25
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 3];
    r:rule skolem:lemma18.

skolem:lemma37 a r:Inference;
    r:gives {
        2 :state (3 4).
    };
    r:evidence (
        skolem:lemma38
        skolem:lemma25
        skolem:lemma6
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo 4];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo 3];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_4"]; r:boundTo 5];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_5"]; r:boundTo 2];
    r:rule skolem:lemma22.

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

