English
Related papers

Related papers: h: A Plank for Higher-order Attribute Contraction …

200 papers

Constraint Handling Rules (CHR) is a declarative committed-choice programming language with a strong relationship to linear logic. Its generalization CHR with Disjunction (CHRv) is a multi-paradigm declarative programming language that…

Programming Languages · Computer Science 2010-09-16 Hariolf Betz , Thom W. Frühwirth

Knowledge refactoring compresses a logic program by introducing new rules. Current approaches struggle to scale to large programs. To overcome this limitation, we introduce a constrained optimisation refactoring approach. Our first key idea…

Logic in Computer Science · Computer Science 2025-06-23 Minghao Liu , David M. Cerna , Filipe Gouveia , Andrew Cropper

We present a straightforward source-to-source transformation that introduces justifications for user-defined constraints into the CHR programming language. Then a scheme of two rules suffices to allow for logical retraction (deletion,…

Artificial Intelligence · Computer Science 2017-09-12 Thom Fruehwirth

Refactoring is an established technique from the object-oriented (OO) programming community to restructure code: it aims at improving software readability, maintainability and extensibility. Although refactoring is not tied to the…

Software Engineering · Computer Science 2007-05-23 Alexander Serebrenik , Tom Schrijvers , Bart Demoen

Shape constraints (such as non-negativity, monotonicity, convexity) play a central role in a large number of applications, as they usually improve performance for small sample size and help interpretability. However enforcing these shape…

Machine Learning · Statistics 2020-10-20 Pierre-Cyril Aubin-Frankowski , Zoltan Szabo

We consider the application of Constraint Handling Rules (CHR) for the specification of type inference systems, such as that used by Haskell. Confluence of CHR guarantees that the answer provided by type inference is correct and consistent.…

Programming Languages · Computer Science 2020-02-19 Gregory J. Duck , Remy Haemmerle , Martin Sulzmann

Linear algebraic expressions are the essence of many computationally intensive problems, including scientific simulations and machine learning applications. However, translating high-level formulations of these expressions to efficient…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-03-22 Dániel Berényi , András Leitereg , Gábor Lehel

Computing systems have become increasingly complex with the emergence of heterogeneous hardware combining multicore CPUs and GPUs. These parallel systems exhibit tremendous computational power at the cost of increased programming effort.…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-10 Michel Steuwer , Christian Fensch , Christophe Dubach

PRISM is an extension of Prolog with probabilistic predicates and built-in support for expectation-maximization learning. Constraint Handling Rules (CHR) is a high-level programming language based on multi-headed multiset rewrite rules. In…

Programming Languages · Computer Science 2010-07-23 Jon Sneyers , Wannes Meert , Joost Vennekens , Yoshitaka Kameya , Taisuke Sato

If a code base is so big and complicated that complete mechanical verification is intractable, can we still apply and benefit from verification methods? We show that by allowing a deliberate mechanized formalization gap we can shrink and…

Programming Languages · Computer Science 2019-10-28 Antal Spector-Zabusky , Joachim Breitner , Yao Li , Stephanie Weirich

Constraint Logic Programming (CLP) and Hereditary Harrop formulas (HH) are two well known ways to enhance the expressivity of Horn clauses. In this paper, we present a novel combination of these two approaches. We show how to enrich the…

Programming Languages · Computer Science 2007-05-23 Javier Leach , Susana Nieva , Mario Rodriguez-Artalejo

Component frameworks are complex systems that rely on many layers of abstraction to function properly. One essential requirement is a consistent means of describing each individual component and how it relates to both other components and…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-02-09 Gabrielle Allen , Tom Goodale , Frank Löffler , David Rideout , Erik Schnetter , Eric L. Seidel

The Shapes Constraint Language (SHACL) is the recent W3C recommendation language for validating RDF data, by verifying certain shapes on graphs. Previous work has largely focused on the validation problem and the standard decision problems…

Artificial Intelligence · Computer Science 2022-06-16 Paolo Pareti , George Konstantinidis , Fabio Mogavero

A wide range of constraints can be compactly specified using automata or formal languages. In a sequence of recent papers, we have shown that an effective means to reason with such specifications is to decompose them into primitive…

Artificial Intelligence · Computer Science 2009-03-04 Claude-Guy Quimper , Toby Walsh

The Shapes Constraint Language (SHACL) is a recent W3C recommendation language for validating RDF data. Specifically, SHACL documents are collections of constraints that enforce particular shapes on an RDF graph. Previous work on the topic…

Logic in Computer Science · Computer Science 2020-11-06 Paolo Pareti , George Konstantinidis , Fabio Mogavero , Timothy J. Norman

Recent constraint logic programming (CLP) languages, such as HAL and Mercury, require type, mode and determinism declarations for predicates. This information allows the generation of efficient target code and the detection of many errors…

Programming Languages · Computer Science 2010-09-03 Maria Garcia de la Banda , Warwick Harvey , Kim Marriott , Peter J. Stuckey , Bart Demoen

The Higher-Order $\Psi$-calculus framework (HO$\Psi$) is a generalisation of many first- and higher-order extensions of the $\pi$-calculus. It was proposed by Parrow et al. who showed that higher-order calculi such as HO$\pi$ and CHOCS can…

Logic in Computer Science · Computer Science 2022-09-07 Alex Rønning Bendixen , Bjarke Bredow Bojesen , Hans Hüttel , Stian Lybech

The Essence language allows a user to specify a constraint problem at a level of abstraction above that at which constraint modelling decisions are made. Essence specifications are refined into constraint models using the Conjure automated…

Artificial Intelligence · Computer Science 2021-11-02 Özgür Akgün , Alan M. Frisch , Ian P. Gent , Christopher Jefferson , Ian Miguel , Peter Nightingale , András Z. Salamon

Passive documents and active programs now widely comingle. Document languages include Turing-complete programming elements, and programming languages include sophisticated document notations. However, there are no formal foundations that…

Programming Languages · Computer Science 2023-11-15 Will Crichton , Shriram Krishnamurthi

Constraint Handling Rules (CHR) is a committed-choice rule-based language that was originally intended for writing constraint solvers. In this paper we show that it is also possible to write the classic union-find algorithm and variants in…

Programming Languages · Computer Science 2007-05-23 Tom Schrijvers , Thom Fruehwirth