7,331 research outputs found
The Countdown Problem
We systematically develop a functional program that solves the countdown problem, a numbers game in which the aim is to construct arithmetic expressions satisfying certain constraints. Starting from a formal specification of the problem, we present a simple but inefficient program that solves the problem, and prove that this program is correct. We then use program fusion to calculate an equivalent but more efficient program, which is then further improved by exploiting arithmetic properties
Linear lambda terms as invariants of rooted trivalent maps
The main aim of the article is to give a simple and conceptual account for
the correspondence (originally described by Bodini, Gardy, and Jacquot) between
-equivalence classes of closed linear lambda terms and isomorphism
classes of rooted trivalent maps on compact oriented surfaces without boundary,
as an instance of a more general correspondence between linear lambda terms
with a context of free variables and rooted trivalent maps with a boundary of
free edges. We begin by recalling a familiar diagrammatic representation for
linear lambda terms, while at the same time explaining how such diagrams may be
read formally as a notation for endomorphisms of a reflexive object in a
symmetric monoidal closed (bi)category. From there, the "easy" direction of the
correspondence is a simple forgetful operation which erases annotations on the
diagram of a linear lambda term to produce a rooted trivalent map. The other
direction views linear lambda terms as complete invariants of their underlying
rooted trivalent maps, reconstructing the missing information through a
Tutte-style topological recurrence on maps with free edges. As an application
in combinatorics, we use this analysis to enumerate bridgeless rooted trivalent
maps as linear lambda terms containing no closed proper subterms, and conclude
by giving a natural reformulation of the Four Color Theorem as a statement
about typing in lambda calculus.Comment: accepted author manuscript, posted six months after publicatio
Sketched Answer Set Programming
Answer Set Programming (ASP) is a powerful modeling formalism for
combinatorial problems. However, writing ASP models is not trivial. We propose
a novel method, called Sketched Answer Set Programming (SkASP), aiming at
supporting the user in resolving this issue. The user writes an ASP program
while marking uncertain parts open with question marks. In addition, the user
provides a number of positive and negative examples of the desired program
behaviour. The sketched model is rewritten into another ASP program, which is
solved by traditional methods. As a result, the user obtains a functional and
reusable ASP program modelling her problem. We evaluate our approach on 21 well
known puzzles and combinatorial problems inspired by Karp's 21 NP-complete
problems and demonstrate a use-case for a database application based on ASP.Comment: 15 pages, 11 figures; to appear in ICTAI 201
- …