@prefix dpo: <http://www.daml.org/2001/03/daml+oil#>.
@prefix dex: <http://www.daml.org/2001/03/daml+oil-ex#>.
@prefix g: <http://www.w3.org/2001/02pd/gv#>.
@prefix l: <http://www.w3.org/2000/10/swap/log.n3#>.
@prefix u: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix : <http://www.w3.org/2001/Talks/05www10-swfig/dlist-fig#>.

<> g:digraph :theGraph.

:theGraph
  g:hasNode :a, :b, :c, :ll.

:a g:label "a".
:b g:label "b".
:c g:label "c".

:ll dpo:first :a; dpo:rest (:b :c).

dpo:first a :PropertyOfInterest.
dpo:rest a :PropertyOfInterest.

{{ :l dpo:first :v }
  l:implies { :l g:label "(...)"; g:shape "plaintext" }
} a l:Truth; l:forAll :l, :v.

{{ :l dpo:rest :l2.
   :theGraph g:hasNode :l. }
  l:implies { :theGraph g:hasNode :l2. }
} a l:Truth; l:forAll :l, :l2.

dpo:first a g:EdgeProperty; g:color "purple"; g:label "first".
dpo:rest a g:EdgeProperty; g:color "purple"; g:label "rest".
dpo:nil g:label "()"; g:shape "plaintext".


#{ :l dpo:rest :l2. :l2 :contains :v. } l:implies { :l :contains :v }.
#:contains a g:EdgeProperty; g:color "purple".

