@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 dqc: <https://eyereasoner.github.io/eye/reasoning/dqc#>.
@prefix e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>.
@prefix math: <http://www.w3.org/2000/10/swap/math#>.
@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:component skolem:lemma2;
    r:component skolem:lemma3;
    r:component skolem:lemma4;
    r:gives {
        1 dqc:sdcoding 1 .
        3 dqc:sdcoding 3 .
        0 dqc:sdcoding 0 .
        2 dqc:sdcoding 2 .
    }.

skolem:lemma1 a r:Inference;
    r:gives {
        1 dqc:sdcoding 1 .
    };
    r:evidence (
        skolem:lemma5
        [ a r:Fact; r:gives {((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1) e:findall (1 {
            1 dqc:sdcoding 1.
        } (1))}]
        [ a r:Fact; r:gives {(1) math:sum 1}]
        [ a r:Fact; r:gives {(1 2) math:remainder 1}]
    );
    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 1];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo ((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1)];
    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 1];
    r:rule skolem:lemma6.

skolem:lemma2 a r:Inference;
    r:gives {
        3 dqc:sdcoding 3 .
    };
    r:evidence (
        skolem:lemma7
        [ a r:Fact; r:gives {((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1) e:findall (1 {
            3 dqc:sdcoding 3.
        } (1))}]
        [ a r:Fact; r:gives {(1) math:sum 1}]
        [ a r:Fact; r:gives {(1 2) math:remainder 1}]
    );
    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 ((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1)];
    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 1];
    r:rule skolem:lemma6.

skolem:lemma3 a r:Inference;
    r:gives {
        0 dqc:sdcoding 0 .
    };
    r:evidence (
        skolem:lemma8
        [ a r:Fact; r:gives {((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1) e:findall (1 {
            0 dqc:sdcoding 0.
        } (1))}]
        [ a r:Fact; r:gives {(1) math:sum 1}]
        [ a r:Fact; r:gives {(1 2) math:remainder 1}]
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo 0];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo 0];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo ((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1)];
    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 1];
    r:rule skolem:lemma6.

skolem:lemma4 a r:Inference;
    r:gives {
        2 dqc:sdcoding 2 .
    };
    r:evidence (
        skolem:lemma9
        [ a r:Fact; r:gives {((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1) e:findall (1 {
            2 dqc:sdcoding 2.
        } (1))}]
        [ a r:Fact; r:gives {(1) math:sum 1}]
        [ a r:Fact; r:gives {(1 2) math:remainder 1}]
    );
    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 2];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo ((<https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>) 1)];
    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 1];
    r:rule skolem:lemma6.

skolem:lemma5 a r:Extraction;
    r:gives {
        1 dqc:sdcoding 1 .
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>].

skolem:lemma6 a r:Extraction;
    r:gives {
        @forAll var:x_0, var:x_1, var:x_2, var:x_3, var:x_4. {
            var:x_0 dqc:sdcoding var:x_1.
            var:x_2 e:findall (1 {
                var:x_0 dqc:sdcoding var:x_1.
            } var:x_3).
            var:x_3 math:sum var:x_4.
            (var:x_4 2) math:remainder 1.
        } => {
            var:x_0 dqc:sdcoding var:x_1.
        }.
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-query.n3>].

skolem:lemma7 a r:Extraction;
    r:gives {
        3 dqc:sdcoding 3 .
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>].

skolem:lemma8 a r:Extraction;
    r:gives {
        0 dqc:sdcoding 0 .
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>].

skolem:lemma9 a r:Extraction;
    r:gives {
        2 dqc:sdcoding 2 .
    };
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/superdense-coding/sdcoding-a.n3>].

