@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 log: <http://www.w3.org/2000/10/swap/log#>.
@prefix : <https://eyereasoner.github.io/ns#>.
@prefix n3: <http://www.w3.org/2004/06/rei#>.
@prefix var: <http://www.w3.org/2000/10/swap/var#>.
@prefix list: <http://www.w3.org/2000/10/swap/list#>.

skolem:proof a r:Proof, r:Conjunction;
    r:component skolem:lemma1;
    r:component skolem:lemma2;
    r:gives [ log:graph (
        [ log:triple (:water :is :InorganicCompound)]
        [ log:triple (:water :is :observable)]
    )].

skolem:lemma1 a r:Inference;
    r:gives [ log:graph (
        [ log:triple (:water :is :InorganicCompound)]
    )];
    r:evidence (
        skolem:lemma3
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo [ n3:uri "https://eyereasoner.github.io/ns#water"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ n3:uri "https://eyereasoner.github.io/ns#InorganicCompound"]];
    r:rule [ a r:Fact; r:gives [ log:graph ([ log:triple ([ log:graph (
        [ log:triple (var:x_0 :is var:x_1)]
    )] log:implies [ log:graph (
        [ log:triple (var:x_0 :is var:x_1)]
    )])])]].

skolem:lemma2 a r:Inference;
    r:gives [ log:graph (
        [ log:triple (:water :is :observable)]
    )];
    r:evidence (
        skolem:lemma4
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo [ n3:uri "https://eyereasoner.github.io/ns#water"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo [ n3:uri "https://eyereasoner.github.io/ns#observable"]];
    r:rule [ a r:Fact; r:gives [ log:graph ([ log:triple ([ log:graph (
        [ log:triple (var:x_0 :is var:x_1)]
    )] log:implies [ log:graph (
        [ log:triple (var:x_0 :is var:x_1)]
    )])])]].

skolem:lemma3 a r:Extraction;
    r:gives [ log:graph (
        [ log:triple (:water :is :InorganicCompound)]
    )];
    r:because [ a r:Parsing; r:source <https://eyereasoner.github.io/eye/reasoning/arcus/water/water.ttl>].

skolem:lemma4 a r:Inference;
    r:gives [ log:graph (
        [ log:triple (:water :is :observable)]
    )];
    r:evidence (
        skolem:lemma5
        [ a r:Fact; r:gives [ log:graph ([ log:triple (([ log:graph (
            [ log:triple (([ log:graph (
                [ log:triple (:water :is :solid)]
            )] [ log:graph (
                [ log:triple (:water :is :liquid)]
            )] [ log:graph (
                [ log:triple (:water :is :gas)]
            )]) list:member true)]
        )] [ log:graph (
            [ log:triple ([ log:graph (
                [ log:triple (:water :is var:x_9)]
            )] log:implies [ log:graph (
                [ log:triple (:water :is :observable)]
            )])]
        )]) log:forAllIn ((<https://eyereasoner.github.io/eye/reasoning/arcus/water/water.ttl>) 1))])]]
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_1"]; r:boundTo ([ log:graph (
        [ log:triple (:water :is :solid)]
    )] [ log:graph (
        [ log:triple (:water :is :liquid)]
    )] [ log:graph (
        [ log:triple (:water :is :gas)]
    )])];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo [ n3:uri "https://eyereasoner.github.io/ns#water"]];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_3"]; r:boundTo ((<https://eyereasoner.github.io/eye/reasoning/arcus/water/water.ttl>) 1)];
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_2"]; r:boundTo [ n3:uri "http://www.w3.org/2000/10/swap/var#x_9"]];
    r:rule [ a r:Fact; r:gives [ log:graph ([ log:triple ([ log:graph (
        [ log:triple ((var:x_0) log:allPossibleCases var:x_1)]
        [ log:triple (([ log:graph (
            [ log:triple (var:x_1 list:member true)]
        )] [ log:graph (
            [ log:triple ([ log:graph (
                [ log:triple (var:x_0 :is var:x_2)]
            )] log:implies [ log:graph (
                [ log:triple (var:x_0 :is :observable)]
            )])]
        )]) log:forAllIn var:x_3)]
    )] log:implies [ log:graph (
        [ log:triple (var:x_0 :is :observable)]
    )])])]].

skolem:lemma5 a r:Inference;
    r:gives [ log:graph (
        [ log:triple ((:water) log:allPossibleCases ([ log:graph (
            [ log:triple (:water :is :solid)]
        )] [ log:graph (
            [ log:triple (:water :is :liquid)]
        )] [ log:graph (
            [ log:triple (:water :is :gas)]
        )]))]
    )];
    r:evidence (
        skolem:lemma3
    );
    r:binding [ r:variable [ n3:uri "http://www.w3.org/2000/10/swap/var#x_0"]; r:boundTo [ n3:uri "https://eyereasoner.github.io/ns#water"]];
    r:rule [ a r:Fact; r:gives [ log:graph ([ log:triple ([ log:graph (
        [ log:triple (var:x_0 :is :InorganicCompound)]
    )] log:implies [ log:graph (
        [ log:triple ((var:x_0) log:allPossibleCases ([ log:graph (
            [ log:triple (var:x_0 :is :solid)]
        )] [ log:graph (
            [ log:triple (var:x_0 :is :liquid)]
        )] [ log:graph (
            [ log:triple (var:x_0 :is :gas)]
        )]))]
    )])])]].

