@prefix dpo: <http://www.daml.org/2001/03/daml+oil#>.
@prefix dex: <http://www.daml.org/2001/03/daml+oil-ex#>.
@prefix : <boolalgx#>.

:pat :typeG dex:Female, dex:Male.

@prefix g: <http://www.w3.org/2001/02pd/gv#>.
@prefix l: <http://www.w3.org/2000/10/swap/log.n3#>.
@prefix b: <boolalg#>.

@prefix r: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix u: <http://www.w3.org/2000/01/rdf-schema#>.

b:G g:hasNode :pat, :Invalid.
:pat g:label "Pat".

:typeG u:subPropertyOf r:type.
:typeG a g:EdgeProperty; g:label "type"; g:color "blue".

{ { :s :specl :o.
    :specl u:subPropertyOf :genl }
    l:implies { :s :genl :o }
} a l:Truth; l:forAll :s, :o, :specl, :genl.

{ { :x a :C1.
    :x a :C2.
    :C1 dpo:disjointWith :C2. }
     l:implies { :x :typeG :Invalid }
} a l:Truth; l:forAll :x, :C1, :C2.

:Invalid a u:Class; g:style "bold"; g:color "red"; g:label "Invalid".

