Re: modal logic, rdf and category theory

> On 3 Sep 2018, at 12:21, Pat Hayes <phayes@ihmc.us> wrote:
> 
> On 9/2/18 6:04 AM, Henry Story wrote:
>> I changed the title to emphasize the new importance of modal
>> logic in the discussion in this thread.
>>> On 1 Sep 2018, at 21:52, Pat Hayes <phayes@ihmc.us> wrote:
>>> 
>>> On 9/1/18 5:46 AM, Henry Story wrote:
>>>> A bit over 4 years have passed since this thread
>>>> ( https://lists.w3.org/Archives/Public/semantic-web/2014Apr/ )
>>>> and I somehow ended up in University of Southampton studying
>>>> Category Theory and RDF.  I am especially interested in bringing modal logic
>>>> to it, for reasons explained in the paper "Epistemology in the Cloud - on Fake news
>>>> and digital Sovereignty" where I argue from an epistemological point of view for a peer
>>>> to peer hyper web based on modal analysis of knowledge.
>>>> This has been accepted for the 2018 Decentralizing the Semantic Web Workshop
>>>> at ISWC. details here: https://medium.com/@bblfish/epistemology-in-the-cloud-472fad4c8282
>>>> 
>>>> That paper does not go into technical detail, but it did lead Pat Hayes to ping
>>>> me that he was not happy with having references to Possible Worlds in the original
>>>> RDF Semantics spec. (It would be nice to have precise reasons for why this was
>>>> later thought to be a mistake).
>>> 
>>> OK, since you asked :-)
>>> 
>>> The only place in the 2004 RDF specification where the phrase "possible world" is used is in a non-normative section which I wrote as an attempt to give a kind of intuitive outline of the basic ideas of Tarskian model theory, expressed in as intuitive a way as I could for readers who were new to the whole topic of formal semantics. And the phrase occurs even there only in an aside comment, inside scare quotes, to suggest one way to think intuitively about Tarskian interpretations. Nothing is said anywhere in that document or indeed anywhere else in the 2004 RDF specification documents to even remotely suggest that RDF has modal content or should be understood as a modal logic. (In fact, that idea is so far removed from the whole enterprise of RDF that the idea - and the concomitant possibility of misinterpreting that passing phrase in this way - did not even occur to me at the time.)
>>> 
>>> However, this attempt to give an intuitive introduction in a technical specification document was not a success, as it was almost immediately misunderstood by a large number of readers (including, apparently, yourself) and in any case, in retrospect, it was not appropriate to give tutorial material in a technical specification. The revised RDF 1.1 semantics document, replacing the 2004 document which is now deprecated, therefore omits all such intuitive explanations and describes the (slightly modified) semantics directly and formally, without mentioning 'worlds' at all, possible or otherwise.
>>> 
>> I did not think that it was a modal logic, but that it looked like the basis was there to develop it
>> into one. As you mention below the RDF1.1 spec actually agrees with that, by mentioning the possibility of a semantic extension for modal logic in section 10.
>> All I think I need for many applications such as those related to security or access control, is very light logic of contexts to build on, which is seems to be what your very interesting Blogic proposal you referred to below is about. 
> 
> For more on that, and a fairly detailed proposal for a context-logic version of RDF, including a formal semantics, see
> 
> https://www.slideshare.net/PatHayes/rdf-with-contexts
> 
> Note, this was written during the time when the RDF 1.1 WG was active, and refers to some discussions which are recorded in more detail and more depth in the archived WG emails, in case you want to delve into this further. In case you like chasing origins, the first time I got the idea was in 2011, recorded here: https://lists.w3.org/Archives/Public/public-rdf-wg/2011Oct/0195.html  Andy Seaborne had some comments on that thread.
> 
> BTW, I later discovered that essentially the same proposal had been made earlier by Guha and Fikes, and also by Bouquet et al and possibly by others. (http://ceur-ws.org/Vol-166/70.pdf, and see the references in there.) Contexts + RDF seems to be an idea that is kind of floating around in the atmosphere infecting people every now and then.

I started out very early being made aware of Guha's Phd thesis 
"Contexts: A Formalization and Some Applications"
http://www-formal.stanford.edu/guha/
But I read it quickly 15 years ago, and should perhaps study it more carefully now. As I
understand he was one of the people at the origin of RDF. So it looks to me like contexts
are there from the beginning.

In fact I always supposed that the semantic web was going in that direction, and
this intuition was confirmed when I discovered Tim Berners-Lee's and Dan Connolly's 
N3 language very early one, which already at the time allowed one to be more elegant 
about context.

Indeed in April 2006, I wrote a blog post showing how one could deal with temporally
constrained graphs by using an N3 rule to rewrite them. 
"Keeping track of Context in Life and on the Web"
https://web.archive.org/web/20060626031531/http://blogs.sun.com:80/roller/page/bblfish?entry=it_s_all_about_context

I actually show some N3 rules being applied by CWM in that blog post to a context 
in order to transform a graph with a temporal relation that depends on the context
into one that does not depend on that temporal context.

Looking for documentation on N3 I just discovered
that Tim Berners, Lee Dan Connolly, Lalana Kagal, Yosi Scharf and Jim Hendler 
wrote a paper that  same year
"N3Logic: A Logical Framework For the World Wide Web"
http://dig.csail.mit.edu/2006/Papers/TPLP/n3logic-tplp.pdf

SPARQL seems to have formalized (in what to me seems often a much less elegant way)
the pattern matching mechanism of N3. It is also known that SPARQL can be used
as a rule language in a way very similar to the log:implies of N3. The nice thing
about N3 is that one always sticks to the triple structure of rdf, which makes it
very elegant. 

There is an interesting question if one can ever escape contexts at all. It certainly
looks like it will be very unlikely that people will work out the right abstractions
that take all contexts into account. 

Thanks to Google Scholar I followed up easily on the article by Guha you mentioned
and found some interesting papers. 

2010 Context Representation on the Semantic Web
Bao, Jie, Tao, Jiao, McGuinness, Deborah L. and Smart, Paul (2010)
https://eprints.soton.ac.uk/270829/

Is very interesting not least because it shows how one could build a more
sophisticated notion of contexts on top of N3 or Quad Stores. Most interesting
of all to this thread is that it argues that one could help specify logical 
levels using Institution Theory that I mentioned earlier. (And it does so quickly
while explaining in plain english what some of the formulas mean)


>> If the semantics of current RDF has not got this part quite right it seems to be there in the syntax from the beginning, since a RDF/XML document can contain another RDF/XML document
> ?In what sense of "contain"?

Well a predicate can be related to an RDF Literal which of course needs to be interpreted.

<?xml version="1.0" encoding="utf-8" ?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
         xmlns:ns0="http://example.com/">  
<rdf:Description rdf:about="http://example.com/LauraLane#i">
   <ns0:says rdf:parseType="Literal">
      <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
              xmlns:ns0="http://example.com/">
          <rdf:Description rdf:about="http://example.com/LauraLane#i">
              <ns0:disklikes rdf:resource="http://example.com/ClarkKent#geek"/>
          </rdf:Description>
     </rdf:RDF>
   </ns0:says>
</rdf:Description>
</rdf:RDF>



> 
>> , and presumably the point is not to automatically merge the embedded document with the one it is contained in. So what is the meaning of the embedded graph? Well it has to be some interpretation that satisfies the graph. But there could be many full interpretations in part because
>> one can only ever work out Finite interpretations (because the semantic web is incomplete) and these are compatible with very many full interpretations.
> 
> I confess to not following your thinking here. AFAIK, the RDF WG discussions never considered the idea of one RDF document "containing" another in any semantically meaningful way.

It allows a document to contain an XML Literal. If that XML Literal is an RDF/XML literal
it follows that it can be interpreted just the same way as any other document. But if one is
to map that intelligently into a quad store one would map that as a graph linked to from the first one,
such as

:LauraLane :says { :LauraLane :dislikes :ClarkKent } .

At the time there were no quad stores to do this type of transformation, but it would not
be wrong. And well it would not take a lot to create a literal that had that interpretation
for RDF/XML.

>> But also because documents can be published to mislead ("fake news") software into believing the universe is other than it is.
> 
> Well, of course. Publication on the Web has never been a guarantee of truth or accuracy, and RDF doesn't change that fact of social life.
> 
>> I have a short blog post "Phishing in Context - Epistemology of the Screen" that goes into this
>> where I make clear the importance of context, and how some good salesman arbitrarily named Donald
>> can try to use confusions of context as bait
>> https://medium.com/cybersoton/phishing-in-context-9c84ca451314
>> Another simple logic of Contexts is the well known work by Mike Burrows (who wrote the AltaVista search engine), Martin Abadi, Butler Lampson, Gordon Plotkin from 1993 "A calculus for access control in distributed systems" https://dl.acm.org/citation.cfm?id=155225
>> Quad stores (RDF Datasets) can clearly be used as a foundation to build such things on.
> 
> True. However, quad stores have no universally accepted semantics, so it will not be easy to standardize any of this.

It's actually quite easy. The semantics of a graph is the set of interpretations for which it is
true. There are a few variables there:

1) the set IR of resources can be different. For example in our world the set may contain
books about Superman, and Laura Lane but no agents with those properties. 
Whereas in the fictional spaces of those books those Characters do exist as resources 
with special properties.  But it may also contain resources about Hillary Clinton and 
weird pizzarias with basements that in our world don't exist - but that do in the imagination
of quite a few americans, that have lead some to act on those beliefs, and many to vote.

2) the conventional interpretations accepted for the URIs used as subject and object. 
  A URI could mean anything before it is coined. For example the URL for owl:sameAs could have
  been any number of other URIs.

3) the various interpretations due to the possibility of blank nodes being assigned to different
   resources in each of those universes.

The set of those interpretations is the meaning of the graph. If the Interpretation considered to
be the actual one is in there then the graph is true.

So we can understand what 

:HillaryClinton :in :Paris;
    :hears { :HillaryClinton :in :Boston }

And even though the graph quoted contradicts the external one, we know what it would
mean for it to be true, but we (may) also know that it is not.

> 
>> If you think as agents that write RDF graphs as processes, then you can see how this is coalgebraic.
>> Different such processes are writing from partial information situations in different contexts, and
>> with potentially antagonistic aims. Context matters.
> 
> I think that you are here using "context" informally, whereas I was using it rather more formally, referring to context logics such as CycL.

yes, I may have been thinking all one needs is graphs for contexts. It certainly
seems to be an essential ingredient, as the article "Context Representation on the Semantic Web"
argues. And I now see there is a whole literature on more sophisticated notions of context.

> 
>>> Right at the end of the RDF 1.1 semantics document there is indeed a tiny mention of the possibility of some future extension of RDF using a modal interpretation of RDF datasets (basically quad stores). But any such interpretation would require a major change to the semantics (analogous to the extension of Tarskian model theory to the Kripke semantics for modal logics) and some kind of enrichment of the RDF syntax to provide some way to indicate the syntactic scope of any modal operator. RDF graph syntax has no scope marking, a fact that gave the RDF and OWL WGs many technical challenges.
>>> (For further discussion of this point and what could be done about it, see
>>> https://www.slideshare.net/PatHayes/blogic-iswc-2009-invited-talk
>>> starting from slide 15.)
>> Very interesting set of slides. Here are some thoughts from my research in CT.
>> • Slide 10 on names
>>   The difference here is between names as syntactic, denotational semantic and operations semantic
>> terms. 
> 
> If I understand you here (I might well not...) then I disagree. The issue I was trying to describe in that slide is the fact that referring names on the Web are what one might call socially non-arbitrary. They are more like names in natural language than logical identifiers, in this regard. But this has nothing to do with the nature of the entities they refer to.

yes, David Lewis in "Convention" explains how languages gain their meanings using co-operative Game Theory. It is a very nice read. In the case of the web the game is partly determined by the fact that
one can dereference the URI. That is the fastest, easiest method to find out something about it. And
practical considerations are not unimportant in helping people choose between equivalent conventions.

> The syntactic view of names that algebraic views of logic have is the one espoused by the RDF specs. These are indeed interchangeable.

Well that is also true. At the beginning of the Web any URI can mean anything. Then the process of
convention starts and determines the actual language of the web.

> 
> But they aren't, because the same IRIs get used in non-logical contexts as well, and while a renaming might preserve the purely logical meaning it will not preserve the meaningful relationships to these other uses. But in any case, logical renaming requires ALL uses of the name to be replaced in one step, and the Web - even the purely formal part of it encoded in RDF - is too large and scattered for this to ever be possible.

exactly. That is the process that stabilizes the language - David Lewis uses the word Metastable 3 times in his book. But that is true of all languages, not just the web.

> 
>>   But the Semantic web is an evolutionary *process* that starts at a certain stage and develops,
>> where different players have only a partial view on its evolution. Coalgebras represent the mathematics of states (that evolve) and observation as the subtitle of Bart Jacobs' recent book on Coalgebras points out clearly
>> https://www.cambridge.org/core/books/introduction-to-coalgebra/0D508876D20D95E17871320EADC185C6
>>   The Web itself is coalgebraic, since resources that URIs refer to are things that change *State*.
> 
> Not all of them. And indeed, using a URI to /refer to/ (as opposed to /identify/, using RESTful HTTP) something with a changing state is in many ways non-"cool", in TimBL's phrase.

URLs (without the hash and ignoring redirects) refer to information resources that have 
state and that can change over time. Their referent are states of objects that can be observed
through representations that can change over time.  That is what I mean by these being 
coalgebraic. As such the referent of those names don't change: they  refer to the stream 
- the changing stream.

What Tim means by cool URIs don't change is not that the representation does not change - but
that they don't change in ways that change the topic so that people referring to them could 
argue that you have changed the meaning of the documents linking to your content. Ie: the identity
criterion for what constitutes representations that are the same as the previous ones is a socially
constructed notion of identity. Seriously changing the meaning is to let down those linking to you.
And it could have legal consequences.

I have an illustration of how this works here
https://math.stackexchange.com/questions/2896172/how-should-one-model-rdf-semantics-in-terms-of-category-theory

> 
>> These are things that return representations (algebraically interpretable objects).
>>   Hence the fight between many logicians and Linked Data folks may just be a case of a categorical
>> misapprehension between people working in a dual category.
> 
> Perhaps, but I think it goes deeper than that.
>>      Anyway we agree here about names and the importance of reference. And I think the
>> categorical duality here can help give us a mathematical representation of the web that shows how
>> these two sides can work together.
>> • Slide 18 on blank nodes
>>      Interestingly here you note that the problem is with a set theoretic definition of blank nodes
>> that are global. Benjamin Braatz in his 2009 thesis
>> "Formal Modelling and Application of Graph Transformations in the Resource Description Framework"
>> https://www.depositonce.tu-berlin.de/bitstream/11303/2617/2/Dokument_29.pdf
>> of which the first half is very readable for someone with knowledge of RDF.
>> gave a Category Theoretic model of RDF where each graph comes with its own blank node set, and
>> the only way to identify such nodes is by morphisms. This is actually an advantage of a category
>> theoretic way of looking things that tends to put less emphasis on identity and a lot more on morphisms.
>>    Still it looks like RDF1.1 allows blank nodes across contexts
> 
> It doesn't mention contexts but it does allow for graphs to share bnodes, in particular, graphs in a single dataset. So yes, in effect.
> 
> 
>> (as I gather from 5.1.1),
>> which would be a way to make statements de Re about someone's beliefs, eg:
>>   Laura Lane believes of Superman that he cannot fly.
>> _:superman = :SuperMan .
>> :LL believes { _:superman a :NonFlyingPerson;
>>                      foaf:name "Clark Kent" } .
>> I wonder how much the blank node sharing would require changes to Benjamin Braatz'
>> thesis.
>>> 
>>>> 
>>>> It is to me very clear that RDF has a modal aspect to it, which comes out very clearly
>>>> with Quad stores.
>>> 
>>> That is totally unclear to me. Quad stores can be, and have been, used to represent all kinds of 'extra' content, including graphs with time-stamping or location-stamping or representing states of something or linking information about a person or topic to that person or topic. None of this is modal.
>> Well all of these are thought of as modal logics.
> 
> No no no! Please don't get this muddled. A logic with times in it is NOT a modal tense logic, and a logic which mentions belief contexts explicitly is NOT a modal belief logic. The modalities occur, and are required, when the logic does NOT mention the 'parameters' of truth explicitly. So, for example, modal TENSE logic does not have expressions denoting times, but instead has modal operators for future and past tenses. There is an unspoken convention that any plain assertion made without the modalites is supposed to be true 'now'. As soon as you put times into the mix, the modalities become redundant and can be expalined away as simple quantified assertions, so that
> 
> PAST(Full-Professor(PatHayes))
> 
> would turn into something like
> 
> (exists (T)(Earlier(T, NOW) & Full-Professor(PatHayes, T) )
> 
> where we mention the 'now' explicitly. And this is no longer a modal logic: it's just conventional logic with an ontology of ties embedded into it. The same kind of thing happens with all the other modalities (though de dicto stuff in quantified belief logics does get a bit hairy.) In fact, context logic can be seen as a general-purpose device for /eliminating/ modalities and reducing all modal constructions to a non-modal framework. For lots more on this, see
> https://www.ihmc.us/users/phayes/IKL/GUIDE/GUIDE.html
> especially ...#ContextsModalities.

I will need to look at this more closely.

But I think there is an indexical element with any statement/graph in RDF, namely it's truth depends
on what the actual world is. This is of course impossible to completely describe, and 
furthermore there are important disagreements as to its description. So though I think we 
should agree that the actual world is objectively decidable, it won't help to ignore the indexical
role it plays. And this does not alter the meaning of a graph: its meaning is objective
(if  we idealise here as before, and ignore potential disagreements as to the meaning of terms), 
and is the set of interpretations as argued above. 

The advantage of this is that I can argue and make sense of Sherlock Holmes by taking the
set IR of resources that best describe his partial world as the actual one when he speaks.
That will help me make sense of the story. 
See "Truth in Fiction" http://andrewmbailey.com/dkl/

But it also helps make sense of contemporary politics, as well as of thieves, liars and professional
con men/women, Phishers and others whose aim is to change their victim's perception
of the actual world enough to entrap them.


> 
>> My guess is that the concept that
>> ties all modal logics together is the concept of context.
> 
> That's about as wrong as it can get, in fact. See above.
> 
> 
>> It would be interesting
>> to see if there is a proof of that...
>>> 
>>>> But it looks like this may need proving - or perhaps someone has already
>>>> done so? Modal logic need not I suppose involve possible worlds, and the interesting thing
>>>> is that Category Theories believe to have proven that modal logic is to coalgebras what
>>>> equational reasoning is to algebras.  See "Modal Logics are Coalgebraic" for a summary
>>>> https://academic.oup.com/comjnl/article-abstract/54/1/31/336864
> 
> That is, unfortunately, behind a rather high paywall. If you have a link to an open published version, please give it.

Sorry. Here it is available for all
https://eprints.soton.ac.uk/267144/1/ModalCoalgRev.pdf

> 
>>>> Coalgebras give us the mathematics of infinite streams, processes, a notion of co-induction,
>>>> and are to semantics what algebra is to syntax.
>>>> 
>>>> All RDF semantics tells us is how to merge two graphs when one believes them both
>>>> to be true.
>>> 
>>> Not quite "all", but your introduction of "believes" is gratuitous. The RDF (and OWL) semantics saying nothing about believing or beliefs.
>> Yes, that's because I am thinking in terms of using these specs by writing User Agents that need to
>> help the User work with the published graphs encountered on the web in order to arrange meetings,
>> buy products, etc... So I take a pragmatic action oriented view of these specs.
>> Here R. Brandom, a student of David Lewis, whose thesis was on Impossible Worlds, and who went on
>> from there to develop a philosophy of Analytic Pragmatism, is well worth looking at. He uses pragmatism
>> I think to sidestep the idealisation of possible worlds, by instead speaking of the logical consequences an actor is bound to by making a statement. Such statements can of course be contradictory, which is why this is a process oriented view of possibilities, as I understand.
>> But nevertheless, the spec would say that the two graphs have compatible interpretations. Since any graph can have any number of interpretations, this is saying that there some number of models that makes them true. But then if there is set of model that makes them true, that may not be a model the actor dealing with that graph believes to be true 
> 
> Um... that does not make sense. Models(in this sense) aren't true or not true, they are representations of the way that the world could be arranged so as to make some /sentences/ (RDF graphs) true.

yes :-)

> 
>> - ie one he would act on. Though he may be keen to use the misapprehension of the actor with that belief to take advantage of that situation.
>> Which is pretty much how Phishing works.
>>> 
>>>> But what if one believes that someone else believes them to be true?
>>> 
>>> And how is that nested modality to be represented in a form that can be transmitted across the Web? You need to explain how RDF syntax can be extended to cover this kind of assertion.
>> One does not need to transmit it over the web for it to be useful. 
> 
> But we are here talking about extending RDF (aren't we?) in some way, and that extension /does/ need to be transmittable over the Web. That is the whole point of defining these languages.

yes. Just pointing out that I can gather a number of simple RDF graphs from the web
and already start using them using evidence logic, which are described in a chapter of
Eric Pacuit's recent book "Neighborhood Semantics for Modal Logics" in 1.4.4 a Logic of Evidence and
Belief. The idea is that every graph should count just as evidence for various propositions and
actions.

> 
>> If I have an
>> application that merges different graphs and presents this to the user it should be
>> possible for the user to be surprised about a conclusion reached, ask then where
>> the information came from, and potentially remove some graphs that he finds dubious.
> 
> All true, but AFAI can see, has nothing to do with extending RDF to be modal.

Does the argument that the actual world being indexical makes it interpretable as modal
help convince you?

David Lewis showed that one can map counterfactual statements to first order logic as
long as one can quantify over possible worlds. Translated to this context this would mean
that we can quantify over interpretations. Perhaps there is an isomorphism, in which case
it already is modal? 

> 
>> But one can even with RDF/XML pass graphs inside graphs since one can pass an rdf literal
>> in an rdf graph, and that can contain an rdf literal too...
>> But there is also some basic ways this has been done since the blogosphere where they
>> invented the nofollow attribute when linking to something, the user wanted to speak about
>> whilst telling Google that he did not want his link to count as a +1 for that web page.
>> Similarly one could have a relation relating an Agent to a content such as :disagrees
>> to keep a distance between that content and ones affirmed by the agent.
> 
> Oh sure, one can imagine all kinds of ontologies of propositional attitudes towards content. As well as degrees of belief, numerical confidence scores and so on. But none of this requires any changes to the /logic/. OUr old 'named graph' paper had some ideas in it along these lines, also with detailed semantics worked out: we had to introduce a notion of rigid identifier (for the graph names) into the model theory to do it properly.

Do you have a link to it? 

> 
>>> 
>>>> Then by merging them one can find out what they think is true, and one can model that
>>>> in terms of possible worlds, or for those more syntactically oriented sets of all the
>>>> ways of completing those graphs in ways that are consistent (or sets of maximally complete
>>>> such graphs). There is a clear modal element to that, in so far as one cannot
>>>> merge graphs of what one believes to be true into someone else's belief store without getting
>>>> a wrong idea of what they believe.
>>> 
>>> But one can say all of this without mentioning the modal notion of belief. You are here simply talking about truth, consistency and validity (or otherwise) of inference on RDF graphs, but adding 'believes' instead of 'true' throughout.
>> yes, I am speaking of actors that use these graphs in order to act in the world. I don't believe
>> and I don't think anyone here believes that software has to be written that maps an rdf graph
>> to the interpretation in the world. What happens is that software developers map graphs to
>> User Interfaces in a functorial way, and these user interfaces are then mapped by humans in the
>> end to things in the world. The humans complete the interpretation functor by composing with the
>> initial one designed by the software developer.
> 
> I don't think the semantic interpretation mapping is a functOR, because I don't believe that the real world is a category :-)

Does the semantics not require sets? Is the world composed of sets?
But seriously I am only putting that forward as a thought experiment to see where
it fails, in order to understand where people coming from category theory may be mislead
by trying to apply categories in an obvious way, but also to see why one may need more
complex structures like Institutions.

> 
>> I give a simplistic but at least intuitive view of how such a functorial notion of semantics can
>> be understood to work in the math exchange question
>> https://math.stackexchange.com/questions/2896172/how-should-one-model-rdf-semantics-in-terms-of-category-theory
>> I need to develop that a lot more of course...
>>> 
>>>> 
>>>> So if this still needs to be proven
>>> 
>>> What exactly "needs to be proven" ?
>> I suppose that RDF1.1 with datasets is compatible with modal logic. Though I
>> have a feeling that Kripke modal logic is too simple and even David Lewisian
>> modal logic which is a neighborhood semantics based one is not quite right.
>> In the newly published book "Category Theory for the Working Philosopher"
>> https://books.google.de/books?id=RIM8DwAAQBAJ
>> there are many very intersting articles. One by Abramski on Contextuality and
>> Paradox. But also the one by Kohei Kishida on "Categories and Modalities"
>> which looks a neighborhood semantics with impossible worlds and shows
>> how that can be understood in terms of category theory.
>> I have not yet fully digested all these different pieces. But I hope this
>> gives some idea as to the work one could draw on to further the semantic web
>> and the web in general by placing it on even firmer formal foundations.
> 
> Well, good luck. I confess to not, myself, finding Category Theory much use in providing any useful insights; it seems to be a whole lot of jargon describing very little, compared to the simplicity and elegance of the usual set-theoretic picture. The Wikipedia article on Coalgebras (which I looked at to help me understand what you were talking about earlier) is a good example. What in this
> https://en.wikipedia.org/wiki/Coalgebra
> provides ANY useful insight AT ALL into what we are discussing? It defines a coalgebra as a vector space, for a start. What do vector spaces have to do with RDF, modal logic or the Web?

yes, that is not a very good introduction.

Corina Cirstea's article is much better and so is 
"Universal Coalgebras: A theory of Systems"
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.159.2020&rep=rep1&type=pdf

as well as Bart Jacobs, Jan Rutten "A tutorial on (co) algebras and (co) induction"
https://pdfs.semanticscholar.org/40bb/e9978e2c4080740f55634ac58033bfb37d36.pdf

He has a lot of excellent articles from the 1990ies showing how OO programming
is coalgebraic. But he also has an article showing how there is a duality between
OO programming and modal logics with operators
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.40.7008
( much more difficult but it shows how this can help bridge branches
that would seem incompatible)

Benjamin Braatz' thesis is an algebraic approach to RDF, and the first half
would be close to your heart, as he has blank nodes tied to graphs, which is
a way to make your metaphorical idea of surfaces real. 

One of the key things of Category Theory is that it emphasizes structure above
elements. And most amazingly it is based on the same notion of a graph that 
RDF uses. That is what is so weird about it. Category theory is less interested
in identity as it is in translation or isomorphism. So that is why it is very good
at finding deep symmetries between very different parts of mathematics, as well
as showing how the same structure is found across mathematical and logical domains. 
For example it turns out that one can think of programming with types in ways 
that are very similar to basic algebras one learns in high school. It used to be 
abstract nonsense. Now category theoreticians are doing keynotes at programming 
language conferences: https://skillsmatter.com/skillscasts/10179-the-maths-behind-types

> 
> But YMMV, as I am sure it does.

:-)

> 
>>> 
>>>> it seems like Institution theory may help to do
>>>> so. In a very interesting paper from 2006 by Dorel Lucanu, Yuan Fang Li, and Jin Song Dong
>>>> entitled "Semantic Web Languages – Towards an Institutional Perspective" show how one can
>>>> use the theory of institutions to show how RDF, RDFS, OWL (light, DL,...,Full), ... that
>>>> seem to have very different semantics can in fact be seen to be consistent.
>>> 
>>> The OWL specification documents show this already, in almost painful detail. (Well, insofar as it is correct. Some RDFS tautologies are not valid in any OWL dialect, for example.)
>> Thanks for pointing that out.
>> In fairness, the article "Semantic Web Languages - Towards an Institutional Perspective" was
>> published in 2006 while the document "OWL 2 Web Ontology Language Mapping to RDF Graphs"
>>     https://www.w3.org/TR/2012/REC-owl2-mapping-to-rdf-20121211/
>> came out in Dec 2012 so over 6 years later.
> 
> Well, sure, but the same job was done in 2004 for the earlier versions of OWL and RDF.
> 
>> I remember in the early days people doubting that these languages could have the same
>> semantics, and using that as an argument for the infeasibility of the semantic web.
> 
> Yes. It was a very contentious matter for quite a while. The split between OWL-DL and OWL-Full was the product of those energetic debates.
> 
> Pat
> 
>>>> http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.119.5368&rep=rep1&type=pdf
>>>> So if someone tells you that these are incompatible semantics point them to that paper.
>>> 
>>> Or read the specifications themselves :-)
>> Yes, now I can point people to two such documents, and most interestingly for me
>> is I can see how the two methodologies overlap or diverge.
>>> Pat
>>> 
>>>> 
>>>> It looks like work needs to be done to show that these are also compatible with
>>>> modal logics (with neighborhood semantics is my guess: ie coalgebras of the form
>>>>     S -> S^2^2
>>>> a.k.a
>>>>     S -> 𝒫𝒫(S)
>>>> where 𝒫(S) is a predicate and 𝒫𝒫(S) is a set of predicates. Now if one thinks
>>>> of a graph as a predicate on possible worlds, one sees why this is similar to quad
>>>> stores. Those are known as a hyper-system as explained in "Universal Coalgebra: A Theory
>>>> of Systems" http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.159.2020&rep=rep1&type=pdf
>>>> 
>>>> As for good introductions to CT, since that was part of the topic 4 years ago,
>>>> I think the best online intro (and more) for programmers are Bart Milewski's
>>>> ( https://bartoszmilewski.com/ ) videos on youtube
>>>> https://www.youtube.com/user/DrBartosz/playlists
>>>> I really recommend it. He is extremely clear without being boring.
>>>> 
>>>> I also liked a lot "Category Theory for Computing Science" by Michael Barr and
>>>> Charles Wells  (online http://www.tac.mta.ca/tac/reprints/articles/22/tr22.pdf )
>>>> because they make the relation of categories to Graphs so clear.
>>>> 
>>>> Indeed just because the relation is so striking I asked a question on Math
>>>> Stackexchange to illustrate how one could be (mis?)lead into a simple pattern
>>>> of thinking of the relationship
>>>> 
>>>> https://math.stackexchange.com/questions/2896172/how-should-one-model-rdf-semantics-in-terms-of-category-theory
>>>> 
>>>> Has anyone come across further developments in this space since then?
>>>> 
>>>> Henry Story
>>>> 
>>>> 
>>>> 
>>>>> On 17 Apr 2014, at 20:02, Obrst, Leo J. <lobrst@mitre.org> wrote:
>>>>> 
>>>>> Back a few years, emerging from the old IEEE Standard Upper Ontology group’s work was Bob Kent’s Information Flow Framework, an ontology framework (a meta-level framework) based on Barwise & Seligman’s Information Flow Theory, itself an application of Category Theory. See, for example: http://arxiv.org/pdf/1109.0983v1.
>>>>> 
>>>>> Mainly folks have used Information Flow Theory or Goguen’s notion of institutions as springboards from category theory to ontologies, especially for so-called “lattice of theories”, ontology mapping, and semantic interoperability applications. Work includes Mossakowski’s various papers: http://iws.cs.uni-magdeburg.de/~mossakow/.
>>>>> 
>>>>> For a short “position” paper, see:
>>>>> Markus Kr¨otzsch, Pascal Hitzler, Marc Ehrig, York Sure. 2005. Category Theory in Ontology Research: Concrete Gain from an Abstract Approach. http://www.aifb.kit.edu/web/Techreport893.
>>>>> 
>>>>> For RDF and category theory, the only paper I know of addresses graph transformations for RDF:
>>>>> Benjamin Braatz; Christoph Brandt. 2008. Graph Transformations for the Resource Description Framework. Proceedings of the Seventh International Workshop on Graph Transformation and Visual Modeling Techniques (GT-VMT 2008). http://journal.ub.tu-berlin.de/eceasst/article/view/158/142.
>>>>> 
>>>>> Admittedly most of the above are applications beyond logic itself and RDF, but might shed some light on how category theory is being used for ontologies.
>>>>> 
>>>>> Thanks,
>>>>> Leo
>>>>> 
>>>>> From: henry.story@bblfish.net [mailto:henry.story@bblfish.net]
>>>>> Sent: Wednesday, April 16, 2014 6:09 PM
>>>>> To: Gregg Reynolds
>>>>> Cc: Antoine Zimmermann; SW-forum Web; public-philoweb@w3.org
>>>>> Subject: Re: rdf and category theory
>>>>> 
>>>>> 
>>>>> On 11 Apr 2014, at 16:32, Gregg Reynolds <dev@mobileink.com> wrote:
>>>>> 
>>>>> 
>>>>> On Fri, Apr 11, 2014 at 8:30 AM, Antoine Zimmermann <antoine.zimmermann@emse.fr> wrote:
>>>>> There're a lot of resources available online and for free about category theory.
>>>>> 
>>>>> Some examples:
>>>>>   - Jirí Adámek, Horst Herrlich, George E. Strecker. Abstract and Concrete Categories: The Joy of Cats (524 pages). http://katmat.math.uni-bremen.de/acc/acc.pdf
>>>>>   - Maarten M. Fokkinga. A Gentle Introduction to Category Theory: the calculational approach.http://wwwhome.ewi.utwente.nl/~fokkinga/mmf92b.pdf (80 pages).
>>>>>   - Jaap van Oosten. Basic Category Theory (88 pages). http://www.staff.science.uu.nl/~ooste110/syllabi/catsmoeder.pdf
>>>>> 
>>>>> 
>>>>> One of the best is Robert Goldblatt's Topoi : The Categorial Analysis of Logic .  He pays special attention to linking CT concepts to both classic math and ordinary intuition.
>>>>> 
>>>>> I looked through Robert Goldblatt's Topoi quickly [1] and indeed it is the book that covers the subject probably most relevant to the semantic web community, since it aims to show how logic can be derived from Category Theory. In this area I found reading through the first part of Ralf Krömer's "Tool and Object: A History and Philosophy of Category Theory" to also be very interesting, as it gives an overview of the foundational debate in Mathematics  started by CT.
>>>>> 
>>>>> It's so odd that RDF is entirely about relations just as CT is ( except that RDF is one to many whereas CT arrows are functions). So I really look forward to understanding how these two domains fit together, and perhaps how they complement each other.
>>>>> 
>>>>> 
>>>>> Henry
>>>>> 
>>>>> [1] Having read through half of  "Conceptual Mathematics" by Willima Lawvere and done most of the exercises there, I am starting to be able to read a lot of these books much more easily.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> -Gregg
>>>>> 
>>>>> Social Web Architect
>>>>> http://bblfish.net/
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> -- 
>>> -----------------------------------
>>> call or text to 850 291 0667
>>> www.ihmc.us/groups/phayes/
>>> www.facebook.com/the.pat.hayes
> 
> -- 
> -----------------------------------
> call or text to 850 291 0667
> www.ihmc.us/groups/phayes/
> www.facebook.com/the.pat.hayes

Received on Monday, 3 September 2018 22:27:57 UTC