Re: [foaf-protocols] FOAF+TLS: RESTful Authentication for Distributed Social Networks

In a paper we are submitting for SPOT2009 [1] there are a couple of  
formulae I fear may not quite express what I wanted to express. These  
are (P11) and (P13)

#(P11)
(_:clientGrph {_:client hasPrivateKeyFor pubKey}) log:conjunction [
               => { romeo:i = :client } ] .

#(P13)
(P13) ( _:romeoGrph { _:client hasPrivateKeyFor pubKey } )  
log:conjunction [
               => { romeo:i = _:client } ]

What I want to do is say that if you look at the graph that is the  
union of what romeo believes, and a subset of what the server  
believes, then that merged graph implies { romeo:i = _:client } .
But I do not want to assert the result in the triple store either. It  
should remain within { }.

I am afraid what I have said might imply that the server himself then  
should believe romeo:i = _:clinent .

Perhaps it would have been better to state

(P13') ( _:romeoGrph { _:client hasPrivateKeyFor pubKey } )  
log:conjunction _:union .
        _:union log:includes { romeo:i = _:client } ] .

But I am not sure if log:includes is a relation from the consequences  
of the _:union graph .

Perhaps I need

(P13") ( _:romeoGrph { _:client hasPrivateKeyFor pubKey } )  
log:conjunction _:union .
        _:union log:conclusion [ log:includes { romeo:i =  
_:client } ] ].

And perhaps I need to add to the union the definition of  
hasPrivateKeyFor as an inverse functional property

(D1)  :hasPrivateKeyFor a owl:InverseFunctionalProperty;
                 rdfs:domain foaf:Agent;
                 rdfs:range cert:PublicKey .

Any guidance would be appreciated.

	Henry

[1] see the thread discussing it starting at http://twurl.nl/ljlgzh

Received on Wednesday, 18 March 2009 14:42:59 UTC