English
Related papers

Related papers: An Empirical Study of Partial Deduction for miniKa…

200 papers

Program specialization is a program transformation methodology which improves program efficiency by exploiting the information about the input data which are available at compile time. We show that current techniques for program…

Programming Languages · Computer Science 2007-05-23 Alberto Pettorossi , Maurizio Proietti , Sophie Renault

We present {Kanren} (read: set-Kanren), an extension to miniKanren with constraints for reasoning about sets and association lists. {Kanren} includes first-class set objects, a functionally complete family of set-theoretic constraints…

Programming Languages · Computer Science 2025-10-06 Rafaello Sanna , William E. Byrd , Nada Amin

We present a formal study of semantics for the relational programming language miniKanren. First, we formulate a denotational semantics which corresponds to the minimal Herbrand model for definite logic programs. Second, we present…

Programming Languages · Computer Science 2020-09-18 Dmitry Rozplokhas , Andrey Vyatkin , Dmitry Boulytchev

miniKanren is a lightweight embedded language for logic and relational programming. Many of its useful features come from a distinctive search strategy, called interleaving search. However, with interleaving search conventional ways of…

Programming Languages · Computer Science 2022-03-07 Dmitry Rozplokhas , Dmitry Boulytchev

Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional languages and the resolution principle of logic languages. Needed narrowing is an…

Programming Languages · Computer Science 2007-05-23 Maria Alpuente , Michael Hanus , Salvador Lucas , German Vidal

Program specialisation aims at improving the overall performance of programs by performing source to source transformations. A common approach within functional and logic programming, known respectively as partial evaluation and partial…

Programming Languages · Computer Science 2007-05-23 Michael Leuschel , Maurice Bruynooghe

In this article, we give a brief overview of the current state and future potential of symbolic computation within the Python statistical modeling and machine learning community. We detail the use of miniKanren as an underlying framework…

Programming Languages · Computer Science 2020-06-01 Brandon T. Willard

We present an implementation of the relational programming language miniKanren as a set of combinators and syntax extensions for OCaml. The key feature of our approach is polymorphic unification, which can be used to unify data structures…

Programming Languages · Computer Science 2019-01-01 Dmitrii Kosarev , Dmitry Boulytchev

Recent years have seen rapid development in Information Extraction, as well as its subtask, Relation Extraction. Relation Extraction is able to detect semantic relations between entities in sentences. Currently, many efficient approaches…

Computation and Language · Computer Science 2024-03-19 Zhuang Li

Higher-order logic programming is an interesting extension of traditional logic programming that allows predicates to appear as arguments and variables to be used where predicates typically occur. Higher-order characteristics are indeed…

Programming Languages · Computer Science 2018-12-04 Antonis Troumpoukis , Angelos Charalambidis

We propose semiringKanren, a relational programming language where each relation expression denotes a semiring array. We formalize a type system that restricts the arrays to finite size. We then define a semantics that is parameterized by…

Programming Languages · Computer Science 2025-09-29 Dmitri Volkov , Yafei Yang , Chung-chieh Shan

We present a miniKanren-based type inferencer for an educational programming language with first-class functions, S-expressions, and pattern-matching. The language itself is untyped which adds a certain specificity to the problem and…

Programming Languages · Computer Science 2024-09-02 Eridan Domoratskiy , Dmitry Boulytchev

Concurrent logic programming predates miniKanren, but concurrent implementations of miniKanren have remained largely unexplored. In this work we present a parallel implementation of miniKanren in Go, demonstrating its feasibility and…

Programming Languages · Computer Science 2025-10-07 Sjoerd Dost

We present a study of unification for rational trees in the context of miniKanren. We give the definition of rational trees, specify the unification algorithm and prove some of its properties. We also introduce a number of heuristic…

Logic in Computer Science · Computer Science 2025-10-07 Eridan Domoratskiy , Dmitrii Kosarev , Dmitry Boulytchev

We present a statically typed embedding of relational programming (specifically a dialect of miniKanren with disequality constraints) in Haskell. Apart from handling types, our dialect extends standard relational combinator repertoire with…

Programming Languages · Computer Science 2024-09-02 Nikolai Kudasov , Artem Starikov

Fine-tuning of Large Language Models (LLMs) for downstream tasks, performed on domain-specific data has shown significant promise. However, commercial use of such LLMs is limited by the high computational cost required for their deployment…

Computation and Language · Computer Science 2025-03-06 Boris Nazarov , Darya Frolova , Yackov Lubarsky , Alexei Gaissinski , Pavel Kisilev

It was previously shown that control-flow refinement can be achieved by a program specializer incorporating property-based abstraction, to improve termination and complexity analysis tools. We now show that this purpose-built specializer…

Programming Languages · Computer Science 2020-08-10 John P. Gallagher , Robert Glück

We improve the backward compatibility of stableKanren to run miniKanren programs. stableKanren is a miniKanren extension capable of non-monotonic reasoning through stable model semantics. However, standard miniKanren programs that produce…

Programming Languages · Computer Science 2024-08-30 Xiangyu Guo , Ajay Bansal

The relationship between abstract interpretation and partial deduction has received considerable attention and (partial) integrations have been proposed starting from both the partial deduction and abstract interpretation perspectives. In…

Programming Languages · Computer Science 2007-05-23 German Puebla , Elvira Albert , Manuel Hermenegildo

Qualitative relationships illustrate how changing one property (e.g., moving velocity) affects another (e.g., kinetic energy) and constitutes a considerable portion of textual knowledge. Current approaches use either semantic parsers to…

Computation and Language · Computer Science 2021-06-07 Mucheng Ren , Heyan Huang , Yang Gao
‹ Prev 1 2 3 10 Next ›