470 research outputs found
Proof Complexity of Systems of (Non-Deterministic) Decision Trees and Branching Programs
This paper studies propositional proof systems in which lines are sequents of decision trees or branching programs, deterministic or non-deterministic. Decision trees (DTs) are represented by a natural term syntax, inducing the system LDT, and non-determinism is modelled by including disjunction, ?, as primitive (system LNDT). Branching programs generalise DTs to dag-like structures and are duly handled by extension variables in our setting, as is common in proof complexity (systems eLDT and eLNDT).
Deterministic and non-deterministic branching programs are natural nonuniform analogues of log-space (L) and nondeterministic log-space (NL), respectively. Thus eLDT and eLNDT serve as natural systems of reasoning corresponding to L and NL, respectively.
The main results of the paper are simulation and non-simulation results for tree-like and dag-like proofs in LDT, LNDT, eLDT and eLNDT. We also compare them with Frege systems, constant-depth Frege systems and extended Frege systems
On syntactically similar logic programs and sequential decompositions
Rule-based reasoning is an essential part of human intelligence prominently
formalized in artificial intelligence research via logic programs. Describing
complex objects as the composition of elementary ones is a common strategy in
computer science and science in general. The author has recently introduced the
sequential composition of logic programs in the context of logic-based
analogical reasoning and learning in logic programming. Motivated by these
applications, in this paper we construct a qualitative and algebraic notion of
syntactic logic program similarity from sequential decompositions of programs.
We then show how similarity can be used to answer queries across different
domains via a one-step reduction. In a broader sense, this paper is a further
step towards an algebraic theory of logic programming.Comment: arXiv admin note: text overlap with arXiv:1809.0993
Program logics for homogeneous meta-programming.
A meta-program is a program that generates or manipulates another program; in homogeneous meta-programming, a program may generate new parts of, or manipulate, itself. Meta-programming has been used extensively since macros
were introduced to Lisp, yet we have little idea how formally to reason about metaprograms. This paper provides the first program logics for homogeneous metaprogramming
ā using a variant of MiniMLe by Davies and Pfenning as underlying meta-programming language.We show the applicability of our approach by reasoning about example meta-programs from the literature. We also demonstrate that our logics are relatively complete in the sense of Cook, enable the inductive derivation of characteristic formulae, and exactly capture the observational properties induced by the operational semantics
- ā¦