155,165 research outputs found
Representing First-Order Causal Theories by Logic Programs
Nonmonotonic causal logic, introduced by Norman McCain and Hudson Turner,
became a basis for the semantics of several expressive action languages.
McCain's embedding of definite propositional causal theories into logic
programming paved the way to the use of answer set solvers for answering
queries about actions described in such languages. In this paper we extend this
embedding to nondefinite theories and to first-order causal logic.Comment: 29 pages. To appear in Theory and Practice of Logic Programming
(TPLP); Theory and Practice of Logic Programming, May, 201
First steps in synthetic guarded domain theory: step-indexing in the topos of trees
We present the topos S of trees as a model of guarded recursion. We study the
internal dependently-typed higher-order logic of S and show that S models two
modal operators, on predicates and types, which serve as guards in recursive
definitions of terms, predicates, and types. In particular, we show how to
solve recursive type equations involving dependent types. We propose that the
internal logic of S provides the right setting for the synthetic construction
of abstract versions of step-indexed models of programming languages and
program logics. As an example, we show how to construct a model of a
programming language with higher-order store and recursive types entirely
inside the internal logic of S. Moreover, we give an axiomatic categorical
treatment of models of synthetic guarded domain theory and prove that, for any
complete Heyting algebra A with a well-founded basis, the topos of sheaves over
A forms a model of synthetic guarded domain theory, generalizing the results
for S
Declarative Modeling and Bayesian Inference of Dark Matter Halos
Probabilistic programming allows specification of probabilistic models in a
declarative manner. Recently, several new software systems and languages for
probabilistic programming have been developed on the basis of newly developed
and improved methods for approximate inference in probabilistic models. In this
contribution a probabilistic model for an idealized dark matter localization
problem is described. We first derive the probabilistic model for the inference
of dark matter locations and masses, and then show how this model can be
implemented using BUGS and Infer.NET, two software systems for probabilistic
programming. Finally, the different capabilities of both systems are discussed.
The presented dark matter model includes mainly non-conjugate factors, thus, it
is difficult to implement this model with Infer.NET.Comment: Presented at the Workshop "Intelligent Information Processing",
EUROCAST2013. To appear in selected papers of Computer Aided Systems Theory -
EUROCAST 2013; Volumes Editors: Roberto Moreno-D\'iaz, Franz R. Pichler,
Alexis Quesada-Arencibia; LNCS Springe
Semi-automatic assessment approach to programming code for novice students
Programming languages have been an integral element of the taught skills of many technical subjects in
Higher Education for the last half century. Moreover, secondary school students have also recently started
learning programming languages. This increase in the number of students learning programming languages
makes the efficient and effective assessment of student work more important. This research focuses on one
key approach to assessment using technology: the semi-automated marking of novice students’ program
code. The open-ended, flexible nature of programming ensures that no two significant pieces of code are
likely to be the same. However, it has been observed that there are a number of common code fragments
within these dissimilar solutions. This observation forms the basis of our proposed approach. The initial
research focuses on the ‘if’ structure to evaluate the theory behind the approach taken, which is appropriate
given its commonality across programming languages. The paper also discusses the results of real world
analysis of novice students’ programming code on ‘if’ structures. The paper concludes that the approach
taken could form a more effective and efficient method for the assessment of student coding assignments
Typechecking protocols with Mungo and StMungo: a session type toolchain for Java
Static typechecking is an important feature of many standard programming languages. However, static typing focuses on data rather than communication, and therefore does not help programmers correctly implement communication protocols in distributed systems. The theory of session types provides a basis for tackling this problem; we use it to develop two tools that support static typechecking of communication protocols in Java. The first tool, Mungo, extends Java with typestate definitions, which allow classes to be associated with state machines defining permitted sequences of method calls: for example, communication methods. The second tool, StMungo, takes a session type describing a communication protocol, and generates a typestate specification of the permitted sequences of messages in the protocol. Protocol implementations can be validated by Mungo against their typestate definitions and then compiled with a standard Java compiler. The result is a toolchain for static typechecking of communication protocols in Java. We formalise and prove soundness of the typestate inference system used by Mungo, and show that our toolchain can be used to typecheck a client for the standard Simple Mail Transfer Protocol (SMTP)
- …