Dear Sebastian, all, I fully agree on your statement :) and thanks for the further elaboration, I find it useful. However, this is true when you deal with the Semantic Web Scale: personally I find useless trying "to clean" data based on consistency checking even because this would mean to promote one universal foundational model as the "right" one, which is ridiculous (imo).
In the context of IKS, and more in general in the context of application that reuse Web data in a local context consistency checking might be useful as a feature, for example for checking if the data you would want to reuse can run well with your domain-ontology. I think that also in this last case there is something that can be debated: how can we use consistency checking in a clever way? For example, a reasoner that is able to identify what's the problem and show it to you by explaining it is already something useful. It would be even better the reasoner is also able to suggest possible changes in the data you want to reuse (possibly based on some configuration) while keeping the link with the original sources. I mean, consistency checking can be a useful feature if it is tailored to specific use cases, while I agree it is almost non-sense as a web scale problem. Val On Aug 31, 2011, at 5:18 PM, Sebastian Schaffert wrote: > Dear all, > > I wanted to elaborate a bit on the topic of consistency checking because I > have a strong opinion on this. And maybe it helps to give understanding why I > consider it only mildly interesting in practical applications ... ;-) > > I wrote: > >> >> schema validation >> ----------------- >> >> This is what you call "check" and this is the typical reasoning applied in >> the Semantic Web domain. I always found its usefulness very limited and >> therefore this is only mildly interesting to me. How often will you really >> need to check whether a model is consistent? Usually only during >> development, if at all. Even worse: when operating on the World Wide Web you >> will *inevitably* have inconsistencies, so it is better to simply live with >> them and not care too much about consistent schemas, it will only drive you >> crazy. ;-) > > > Ok, this was my statement. Back to consistency checking ... :) > > 1. Why do logics people care about consistency? > > The whole topic of consistency checking is rooted in classical logics. It is > founded in the "ex falsum quodlibet" rule of first order predicate logic, > which basically says "if you have an inconsistency in your model, you can > derive everything". Maybe you still know the rule from your logics lectures > ;-) > > "false => A" is equivalent to "not false or A" is equivalent to "true", > regardless of A. > > For example, in a strictly classical model sense, if you have a knowledge > base saying "the car is red" and "the car is green" and "green is not red", > then you could derive that "the moon is made of green cheese and inhabited by > small fur balls constantly discussing about how to best cook spaghetti". > Which is of course completey stupid, but completely valid in classical logic. > > In a model in classical logics, this is a severe problem, because it means > that you cannot derive anything useful at all even if you have just a small > inconsistency. > > > > 2. Why is inconsistency irrelevant in many cases? > > Inconsistency is only a problem in the ideal world of classical logics. > Real-world implementations will never have the same kind of problems > described above, how should they get the idea that the moon is made of green > cheese based on the facts that the car is green and red at the same time? > Software implementations are maybe constructive, but based on existing facts > and not making up facts out of the blue sky. > > The worst case that can happen is that the software will show some error > behaviour. Instead of trying to enforce consistency (which in many cases you > cannot), one challenge is to isolate the error as much as possible and keep > it from spreading. Another challenge is to explain to the user why some > unexpected behaviour takes place and how she can prevent it from happening. > > The rule-based reasoner implemented in the LMF is completely ignorant to > inconsistencies. It does not care at all about them. If you say the car is > red and the car is green, then it will maybe derive that it should be tagged > with "green" and with "red". The error spreads maybe a bit, but the reasoner > will never claim that the moon is made of green cheese. But maybe you were > even right that the car is red and green at the same time (striped car)? > > The rule-based reasoner implemented in the LMF will also display you > explanations why it has inferred certain knowledge. If the car is tagged with > red and tagged with green and you as the user wonder how this could be, you > can hover the mouse over the tag and the reasoner will explain you that this > is because someone said the car is green and someone said the car is red. > > > 3. Why is dealing with inconsistency even desirable? > > The world is full of inconsistencies. And the Web in particular. Neglecting > this is the number one problem of the Semantic Web DL community. Accepting > this is the number one success factor of the Linked Data initiative. Why is > the Web so full of inconsistencies? > - people can have differing opinions about the world: you say "it is cold", I > say "it is warm", and we are both right > - different cultural conceptions: Spanish has one word for "snow", Icelandic > has 16 different words for "snow" > - uncertainties: most circumstances do not fit into the ideal world of logics > because of unknown or uncertain knowledge; a document might be concerned with > a topic only to 30%, or the Stanbol entity recognition might only have a > confidence of "15%" that "San Juan" is a person, "30%" that it is a city, ... > ; if you say "all ravens are black", this is entirely based on observation > and not on fact, there might be a white raven somewhere, you just don't know > it > > > > > Sebastian > -- > | Dr. Sebastian Schaffert [email protected] > | Salzburg Research Forschungsgesellschaft http://www.salzburgresearch.at > | Head of Knowledge and Media Technologies Group +43 662 2288 423 > | Jakob-Haringer Strasse 5/II > | A-5020 Salzburg >
