104,883 research outputs found
Reasoning about Minimal Belief and Negation as Failure
We investigate the problem of reasoning in the propositional fragment of
MBNF, the logic of minimal belief and negation as failure introduced by
Lifschitz, which can be considered as a unifying framework for several
nonmonotonic formalisms, including default logic, autoepistemic logic,
circumscription, epistemic queries, and logic programming. We characterize the
complexity and provide algorithms for reasoning in propositional MBNF. In
particular, we show that entailment in propositional MBNF lies at the third
level of the polynomial hierarchy, hence it is harder than reasoning in all the
above mentioned propositional formalisms for nonmonotonic reasoning. We also
prove the exact correspondence between negation as failure in MBNF and negative
introspection in Moore's autoepistemic logic
A New Rational Algorithm for View Updating in Relational Databases
The dynamics of belief and knowledge is one of the major components of any
autonomous system that should be able to incorporate new pieces of information.
In order to apply the rationality result of belief dynamics theory to various
practical problems, it should be generalized in two respects: first it should
allow a certain part of belief to be declared as immutable; and second, the
belief state need not be deductively closed. Such a generalization of belief
dynamics, referred to as base dynamics, is presented in this paper, along with
the concept of a generalized revision algorithm for knowledge bases (Horn or
Horn logic with stratified negation). We show that knowledge base dynamics has
an interesting connection with kernel change via hitting set and abduction. In
this paper, we show how techniques from disjunctive logic programming can be
used for efficient (deductive) database updates. The key idea is to transform
the given database together with the update request into a disjunctive
(datalog) logic program and apply disjunctive techniques (such as minimal model
reasoning) to solve the original update problem. The approach extends and
integrates standard techniques for efficient query answering and integrity
checking. The generation of a hitting set is carried out through a hyper
tableaux calculus and magic set that is focused on the goal of minimality.Comment: arXiv admin note: substantial text overlap with arXiv:1301.515
Programming and Reasoning with Partial Observability
Computer programs are increasingly being deployed in partially-observable
environments. A partially observable environment is an environment whose state
is not completely visible to the program, but from which the program receives
partial observations. Developers typically deal with partial observability by
writing a state estimator that, given observations, attempts to deduce the
hidden state of the environment. In safety-critical domains, to formally verify
safety properties developers may write an environment model. The model captures
the relationship between observations and hidden states and is used to prove
the software correct.
In this paper, we present a new methodology for writing and verifying
programs in partially observable environments. We present belief programming, a
programming methodology where developers write an environment model that the
program runtime automatically uses to perform state estimation. A belief
program dynamically updates and queries a belief state that captures the
possible states the environment could be in. To enable verification, we present
Epistemic Hoare Logic that reasons about the possible belief states of a belief
program the same way that classical Hoare logic reasons about the possible
states of a program. We develop these concepts by defining a semantics and a
program logic for a simple core language called BLIMP. In a case study, we show
how belief programming could be used to write and verify a controller for the
Mars Polar Lander in BLIMP. We present an implementation of BLIMP called CBLIMP
and evaluate it to determine the feasibility of belief programming
- …