% Participación: Total de la Muestra
INVERSIÓN EN LA IMPLEMENTACIÓN DE LED
Reasoning and consistency checking is generally a well-studied topic [21,61, 129,9,
35, 152, 48, 14,37,137]. Automated reasoning and consistency checking have been used in various application domains including verification of software and hardware specification [106, 137], fault diagnosis [37], semantic web ontology [9, 36,35, 152], UML Models [5,128], and medical diagnosis. Some of the prominent formal reason- ing methods are theorem proving, model checking, model finding, constraint solving, etc. These methods are automated using various tools that are based on proposi- tional logic and SAT (Boolean Satisfiability problem) solvers [129, 130], first-order and higher-order logic [106], logic programming such as Prolog [9], graph and set theory [137], description logic [5, 128,132] and ontology based reasoning [121,131]. Each of the reasoning methods and tools has strengths and limitations. For exam- ple, it is comparatively much easier to automate the propositional (Boolean) logic based reasoning methods as the SAT (Boolean Satisfiability) problems are decid- able [66] (i.e. we can always construct the truth table for a propositional formula). This is why SAT solvers are extensively used in automated reasoning and consis- tency checking. However, a fundamental problem of propositional logic is that the expressibility (expressing power) of propositional logic is very limited as it does not support any quantifier. In fact, the more expressive a formalism is, the harder it is to prove; consequently, the harder it is to automate [55]. This is where the lim- itation of first order and higher order logics stems from; they are more expressive and therefore, their automation is harder. However, first order logic is a better choice for automated reasoning because of its moderate expressibility (although less expressive than higher logics) and the availability of mechanical (automatic) tools for automation.
Logic-programming languages such as Prolog provide another option for the au- tomation of logical reasoning and consistency checking. However, Prolog’s reasoning capacity is known to be limited [9]. Although Prolog is a logic programming lan- guage which works using unification and resolution techniques [157], it is logically imperfect and does not offer the full power of resolution theorem proving [119,160]. Some of the reasoning methods are based on graph and set theory [137]. However, graph theory based knowledge representation and reasoning is very primitive and less expressive as they use elementary notions of set theory that have graphical
representations (e.g. sets, elements and relations) [137].
Model checking algorithms based on first order predicate logic are popular in automated reasoning and verification [106]. However, model checkers usually suffer from state explosion and thereby, generally unsuitable for checking systems with finite but large state space [29, 106, 23, 162, 163], although recent experiments demonstrate the successful use of ProB12, an animator and model checker for the B-
Method13, for the validation of large railways data [76]. Model checking algorithms
explore the entire state space (the whole set of possible interpretations of variables) to ensure that a formula holds in all states.
The reasoning method which does not suffer from state explosion is theorem proving which is, therefore, suitable for reasoning with systems having large and complex data structure [59]. However, theorem proving is not suitable for using do- main specific knowledge [16, 167]. Therefore, the reasoning performed by theorem provers is based on syntax and not semantics. Thus, the use of theorem proving techniques becomes unrealistic in reasoning with a knowledge base containing situa- tional information. Another drawback of theorem provers is that they often require a great deal of user expertise, effort and assistance [59, 6] ([6] is taken from [106]). Therefore, theorem provers are generally not automatic as their automation is dif- ficult and costly [59].
There is a plethora of research articles that have studied crowd-sourced infor- mation in the context of crisis and emergency [60,87,146,118,38,116]. However, I have not found any related work which uses formal logic (by means of formal mod- elling tools or semantic reasoners) for checking consistency of information to resolve contradiction between different pieces of information from untrusted sources, in any context including crisis and/or emergency. However, I have found a few attempts made by the researchers to exploit the reasoning facility provided by ontology lan- guages e.g. OWL (Web Ontology Language), in order to perform inference and answering questions [121,131], not for finding or separating contradictory informa- tion.
Although semantic web related languages and tools provide some reasoning capa- bility, their reasoning power is still primitive [152]. Therefore, researchers advocate for using formal modelling tools, such as Alloy, to provide an automated reasoning service for the semantic web ontology languages too [152]. There are also examples of using Alloy for analysing and checking the consistency of semantic web ontol-
12
http://www.stups.uni-duesseldorf.de/ProB/
13
ogy [35, 36].
Some researchers have used statistical methods, more specifically Dempster Shafer Theory, for reasoning under uncertainty in the context of crisis and/or emer- gency [41]. It is true that the Dempster Shafer Theory (DST), as well as Bayesian Networks (BN), is a good method of reasoning with uncertainty, especially in diag- nosing problems (medical or other). Here is a basic but a typical example application scenario of these methods:
If a patient has fever, dry cough, headache, runny or blocked nose, tiredness, chills and aching muscles, then a reasoning system which uses a statistical method (DST or BN) may infer from the symptoms that the patient has caught influenza. It is important to note that the Dempster Shafer Theory or Bayesian Network infers something new that was unknown (influenza, in our example) from the existing knowledge (symptoms, in our example). The reason why it is not appropriate to use any of the statistical reasoning methods (in this research) is that the aim of this research is to deduce the fact(s) from the information in hand without creating any new information. For example, after knowing the symptoms of the patient, if someone says that the patient has caught malaria while someone else says the patient has caught influenza, then I want my system to say that the patient is likely to be suffering from influenza or malaria. The system may also give more priority to one possibility (e.g. influenza) over the other, depending on various provenance and quality factors that influence trust in information such as reputation, competence, etc. I do not want to add any new information to increase the information overload for the end user which will ruin the purpose of developing the system. I leave the inductive reasoning with the end user. However, it is one of my future plans to see whether the statistical methods or Fuzzy logic methods may be used to improve the result.