Science topics: Computer Science and EngineeringDeclarative Programming
Science topic
Declarative Programming - Science topic
Explore the latest publications in Declarative Programming, and find Declarative Programming experts.
Publications related to Declarative Programming (1,212)
Sorted by most recent
This research delves into the intersection of declarative programming and template-based program synthesis, with a specific focus on their application in the context of RESTful APIs. RESTful APIs are integral to modern web development, demanding efficient and error-free design. Declarative programming offers an innovative approach to simplify the i...
A New Philosophy of both Science and Engineering 1)Critical Rationalism, 2)Information Theory, 3)Cellular Automata, 4)Declarative Programming Paradigm, 5)then 3D Printing
Pawns is a programming language under development that supports algebraic data types, polymorphism, higher order functions and "pure" declarative programming. It also supports impure imperative features including destructive update of shared data structures via pointers, allowing significantly increased efficiency for some operations. A novelty of...
In this paper, we consider the problem of minimising the cost of data transmission as a function of the capacity of telecommunication links. To solve this problem, we first formulated a mathematical model, and then we designed and developed a software that enables the optimisation of the given or randomly generated telecommunications network. Decla...
Sertifikasi halal belum menjadi prioritas utama bagi para pelaku usaha mikro dan kecil (UMK) di Desa Pasirjambu karena terbatas dengan biaya dan prosedur yang rumit. Kegiatan ini bertujuan untuk meningkatkan pengetahuan dan kemampuan pelaku UMK di Desa Pasirjambu dalam mengakses dan menerapkan program sertifikasi halal gratis (Self declare). Metode...
This paper presents a conversational pipeline for crafting domain knowledge for complex neuro-symbolic models through natural language prompts. It leverages large language models to generate declarative programs in the DomiKnowS framework. The programs in this framework express concepts and their relationships as a graph in addition to logical cons...
The semantic capabilities of language models (LMs) have the potential to enable rich analytics and reasoning over vast knowledge corpora. Unfortunately, existing systems lack high-level abstractions to perform semantic queries at scale. We introduce semantic operators, a declarative programming interface that extends the relational model with compo...
Scheduling and optimization have a central place in the research area of computing because it is increasingly important to achieve fully automated production processes to adjust manufacturing systems to the requirements of Industry 4.0. In this paper, we demonstrate how an automated wet-etch scheduling problem for the semiconductor industry can be...
Answer set programming (ASP) is a declarative programming language suited to solve complex combinatorial search problems. Prioritized ASP is the subdiscipline of ASP which aims at prioritizing the models (answer sets) of ASP programs. Common approaches to prioritized ASP require an additional input, sometimes expressed as special literals within th...
RDataFrame is ROOT’s high-level interface for Python and C++ data analysis. Since it first became available, RDataFrame adoption has grown steadily and it is now poised to be a major component of analysis software pipelines for LHC Run 3 and beyond. Thanks to its design inspired by declarative programming principles, RDataFrame enables the developm...
The ALICE experiment [1] at CERN’s LHC is specifically designed for investigating heavy ion collisions. The upgraded ALICE accommodates a tenfold increase in Pb–Pb luminosity and a two-order-of-magnitude surge in minimum bias events. To address the challenges of high detector occupancy and event pile-ups, advanced multidimensional data analysis tec...
Scheduling and optimization have a central place in the research area of computing because it is increasingly important to achieve fully automated production processes to adjust manufacturing systems to the requirements of Industry 4.0. In this paper, we demonstrate how an automated wet-etch scheduling problem for a semiconductor industry can be so...
The paper proposes a framework for embedding logic programming and constraint programming methods in Scala by building a logical object-oriented language around the unification of typed logic based on monads. Two types of API are considered — high-level for language embeddings and low-level for organization of the bidirectional flow of data during...
Answer set programming (ASP) is a popular declarative programming paradigm with various applications. Programs can easily have many answer sets that cannot be enumerated in practice, but counting still allows quantifying solution spaces. If one counts under assumptions on literals, one obtains a tool to comprehend parts of the solution space, so-ca...
Answer set programming (ASP) is a popular declarative programming language for solving hard combinatorial problems. Although ASP has gained widespread acceptance in academic and industrial contexts, there are certain user groups who may find it more advantageous to employ a higher-level language that closely resembles natural language when specifyi...
Search/optimization problems are plentiful in scientific and engineering domains. Artificial intelligence has long contributed to the development of search algorithms and declarative programming languages geared toward solving and modeling search/optimization problems. Automated reasoning and knowledge representation are the subfields of AI that ar...
The Model-View-Controller (MVC) design pattern is very useful and widely used for implementing systems with user interfaces in object-oriented programming languages. However, implementation of an MVC system in state-based languages (including object-oriented languages) limits the ability to naturally achieve some important aspects of software engin...
Research in procedural content generation (PCG) has recently heralded two major methodologies: machine learning (PCGML) and declarative programming. The former shows promise by automating the specification of quality criteria through latent patterns in data, while the latter offers significant advantages for authorial control. In this paper we prop...
The challenges expected for the next era of the Large Hadron Collider (LHC), both in terms of storage and computing resources, provide LHC experiments with a strong motivation for evaluating ways of rethinking their computing models at many levels. Great efforts have been put into optimizing the computing resource utilization for the data analysis,...
Constraint Programming (CP) is a declarative programming paradigm that allows for modeling and solving combinatorial optimization problems, such as the Job-Shop Scheduling Problem (JSSP). While CP solvers manage to find optimal or near-optimal solutions for small instances, they do not scale well to large ones, i.e., they require long computation t...
The ability to efficiently solve hard combinatorial optimization problems is a key prerequisite to various applications of declarative programming paradigms. Symmetries in solution candidates pose a significant challenge to modern optimization algorithms since the enumeration of such candidates might substantially reduce their performance. This pap...
The security of Cloud applications is a major concern for application developers and operators. Protecting users’ data confidentiality requires methods to avoid leakage from vulnerable software and unreliable Cloud providers. Recently, trusted execution environments (TEEs) emerged in Cloud settings to isolate applications from the privileged access...
In 1972, Kowalski and Colmerauer started a revolution with the advent of the Prolog programming language. As with LISP, the language enabled us to think previously impossible thoughts, and ushered in both logic programming and the declarative programming paradigm. Since that time, a number of descendants of Prolog have been brought into the world,...
Constraint Programming (CP) is a declarative programming paradigm that allows for modeling and solving combinatorial optimization problems, such as the Job-Shop Scheduling Problem (JSSP). While CP solvers manage to find optimal or near-optimal solutions for small instances, they do not scale well to large ones, i.e., they require long computation t...
The summary is dedicated to the recently published monography "Zagreb Stylistic School" by Dubravka Oraić Tolić. The academic writes about the golden age of Croatian literary science related to the establishment and work of the Zagreb Stylistic School, which emerged in the 1950s. Following the "rise and fall" of the School, she discusses the instit...
Main objectives of this article are changes in the programming principles of the “Suspilne
Culture” TV channel, the peculiarities of the program content in the period 2020-2022, as
well as potential for further channel development from the content perspective. Methodology
of the analysis includes processing primary sources of information, synthes...
The decision-making related to the placement of applications made from orchestrated serverless functions onto Cloud-Edge infrastructures is a challenging problem as it must consider functional and non-functional requirements. In this article, we propose a novel declarative methodology to determine the placement of FaaS orchestration onto Cloud-Edge...
The development of technologies and computing resources not only expanded the spectrum of digital services in all areas of human activity, but also defined the spectrum of targeted cyber attacks. The object of the study is the process of ensuring the safety of critical business processes that ensure the continuity of production and/or functioning o...
A study of the methodology of developing multi-platform applications using the Kotlin programming language was conducted. The method of developing a multi-platform application for Windows, Android, macOS and Linux operating systems is presented, which allows you to create musical melodies in a new format. The principles of declarative programming a...
Increasing complexity and data-generation rates in cyber-physical systems and the industrial Internet of things are calling for a corresponding increase in AI capabilities at the resource-constrained edges of the Internet. Meanwhile, the resource requirements of digital computing and deep learning are growing exponentially, in an unsustainable mann...
Application of Vehicular Ad Hoc Networks (VANETs) aims to help in the solution of some problems that have arisen in road transportation systems via short-range, low-latency mobile communication. The application of V2X (Vehicle-to-Everything) communication technologies to the next generation of Advanced Driver Assistance Systems (ADAS) is essential...
CERN (Centre Europeen pour la Recherce Nucleaire) is the largest research centre for high energy physics (HEP). It offers unique computational challenges as a result of the large amount of data generated by the large hadron collider. CERN has developed and supports a software called ROOT , which is the de facto standard for HEP data analysis. This...
The aim of this study is to introduce a virtual laboratory platform with metadata-based API for the creation of dynamic software components. Also, the study seeks to assess the platform’s validity and technological acceptance among the community of system developers. The platform is referred to as Esfinge Virtual Lab, and it has been developed util...
The Internet of Things (IoT) is growing fast. In 2018, there was approximately one connected device per person on earth and the number has been growing ever since. The devices interact with the environment via different modalities at the same time using sensors and actuators making the programs parallel. Yet, writing this type of programs is diffic...
Increasing complexity and data-generation rates in cyber-physical systems and the industrial Internet of things are calling for a corresponding increase in AI capabilities at the resource-constrained edges of the Internet. Meanwhile, the resource requirements of digital computing and deep learning are growing exponentially, in an unsustainable mann...
Research trends are pushing artificial intelligence (AI) across the Internet of Things (IoT)–edge–fog–cloud continuum to enable effective data analytics, decision making, as well as the efficient use of resources for QoS targets. Approaches for collective adaptive systems (CASs) engineering, such as aggregate computing, provide declarative programm...
CERN (Centre Europeen pour la Recherce Nucleaire) is the largest research centre for High Energy Physics (HEP). It offers unique computational challenges as a result of the large amount of data generated by the Large Hadron Collider (LHC). CERN has developed and supports a software called ROOT , which is the de facto standard for HEP data analysis....
Halal certification is an activity or process carried out to meet certain standardization achievements with the aim of having formal legal recognition that the products that have been produced meet halal requirements. Cibeusi Village, Ciater District in Subang Regency has the potential for SMEs with a variety of processing in the food sector. Based...
We have proposed that scientific research reports should be constructed entirely of structured knowledge rather than text. In an earlier paper, we emphasized Research Designs as a framework for structured research reports and described how a structured implementation might be applied to Pasteur’s classic swan-neck flask experiment. In this paper, w...
Answer set programming (ASP) is a declarative programming paradigm where the solutions of a search problem are captured by the answer sets of a logic program describing its solutions. Besides native algorithms implemented as answer-set solvers, the computation of answer sets can be realized (i) by translating the logic program into propositional lo...
Answer Set Programming (ASP) is a powerful declarative programming paradigm commonly used for solving challenging search and optimization problems. The modeling languages of ASP are supported by sophisticated solving algorithms (solvers) that make the solution search efficient while enabling the programmer to model the problem at a high level of ab...
The environment theme has taken on considerable importance in consumer purchasing choices. Through voluntary environmental policy tools (product certifications, ecological labels and company certifications) the producers demonstrate their attention to environmental issues. The paper analyzed the environmental impacts, that is, the consumption of re...
This paper presents DeCon, a declarative programming language for implementing smart contracts and specifying contract-level properties. Driven by the observation that smart contract operations and contract-level properties can be naturally expressed as relational constraints, DeCon models each smart contract as a set of relational tables that stor...
Autonomous systems need to be able dynamically adapt to changing requirements and environmental conditions without redeploy-ment and without interruption of the systems functionality. The EU project ASCENS has developed a comprehensive suite of foundational theories and methods for building autonomic systems. In this paper we specialise the EDLC pr...
Answer set programming is a form of declarative programming widely used to solve difficult search problems. Probabilistic applications however require to go beyond simple search for one solution and need counting. One such application is plausibility reasoning, which provides more fine-grained reasoning mode between simple brave and cautious reason...
mperative languages like Java, C++, and Python are mostly used for the implementation of Genetic algorithms (GA). Other programming paradigms are far from being an object of study. The paper explores the advantages of a new non-mainstream programming paradigm, with declarative and nondeterministic features, in the implementation of GA. Control Netw...
Search-optimization problems are plentiful in scientific and engineering domains. Artificial intelligence has long contributed to the development of search algorithms and declarative programming languages geared towards solving and modeling search-optimization problems. Automated reasoning and knowledge representation are the subfields of AI that a...
Finite-state machines (FSM) are a simple yet powerful abstraction widely used for modeling, programming and verifying real-time and reactive systems that control modern factories, power plants, transportation systems and medical equipment.
However, traditionally finite-state machines are either encoded indirectly in an imperative language, such as...
Search-optimization problems are plentiful in scientific and engineering domains. Artificial intelligence has long contributed to the development of search algorithms and declarative programming languages geared towards solving and modeling search-optimization problems. Automated reasoning and knowledge representation are the subfields of AI that a...
The development of technologies
and computing resources not only
expanded the spectrum of digital
services in all areas of human activity,
but also defined the spectrum of
targeted cyber attacks. The object
of the study is the process of ensuring
the safety of critical business
processes that ensure the continuity
of production and/or functioning
o...
The demands regarding high mix, low volume manufacturing and faster product life cycles make flexible production indispensable. Collaborative robots are widely regarded as an enabler for this flexible production. Further, they also achieve the goal of human-centered production envisioned by Industry 5.0. However, its installation requires significa...
The emergence of COVID-19 resulted in the increase in online shopping which showed companies the flaws in how they approach logistics. One of the found solutions was automating internal warehouses to increase efficiency. The proposed solution for the automation of warehouses utilizes autonomous mobile robots, which in this case are the TurtleBot3 r...
This study aims to find out the problems of implementing halal certification through the self-declare program for MSMEs in Banten Province. The quantitative descriptive research method uses a literature study approach and in-depth observation of the problems of implementing halal certification through the self-declare program. The population in thi...
There is an ongoing effort to provide programming abstractions that ease the burden of exploiting multicore hardware. Many programming abstractions (e.g., concurrent objects, transactional memory, etc) simplify matters, but still involve intricate engineering. We argue that some difficulty of multicore programming can be meliorated through a declar...
Implementing complex algorithms for big data, artificial intelligence, and graph processing requires enormous effort. Succinct, declarative programs to solve complex problems that can be efficiently executed for batching and streaming data are in demand. This paper presents Nexus, a distributed Datalog evaluation system. It evaluates Datalog progra...
Data-driven approaches are becoming increasingly common as problem-solving tools in many areas of science and technology. In most cases, machine learning models are the key component of these solutions. Often, a solution involves multiple learning models, along with significant levels of reasoning with the models' output and input. However, the cur...
This paper introduces $\tt{{Presto}}$ , a symbolic partial evaluator for Maude’s rewriting logic theories that can improve system analysis and verification. In $\tt{{Presto}}$ , the automated optimization of a conditional rewrite theory $\mathcal{R}$ (whose rules define the concurrent transitions of a system) is achieved by partially evaluating, wi...
Intensional sets are sets given by a property rather than by enumerating their elements. In a previous work, we have proposed a decision procedure for a first-order logic language which provides restricted intensional sets (RISs), i.e. a sub-class of intensional sets that are guaranteed to denote finite—though unbounded—sets. In this paper, we show...
Declarative programming languages such as SwiftUI have gained increasing relevance for user interface implementation in mobile applications. A tool for evaluating and improving the quality of such projects is static analysis (SA). This study compares the usefulness of two of the most popular SA tools (SonarQube and Codacy) for evaluating real-world...
Orchestrating next-gen applications over heterogeneous resources along the Cloud-IoT continuum calls for new strategies and tools to enable scalable and application-specific managements. Inspired by the self-organisation capabilities of bacteria colonies, we propose a declarative, fully decentralised application management solution, targeting perva...
Osmotic computing encompasses emerging Cloud‐Internet of Things (IoT) computing paradigms, by featuring the possibility for application services to adapt into different functionally equivalent flavours, depending on the contextually available resources and on specific requirements of running applications. This article proposes a fully decentralised...
Thom Frühwirth presented a short, elegant, and efficient Prolog program for the n queens problem. However, the program may be seen as rather tricky and one may not be convinced about its correctness. This paper explains the program in a declarative way and provides proofs of its correctness and completeness. The specification and the proofs are dec...
Computational models of human language often involve combinatorial problems. For instance, a probabilistic parser may marginalize over exponentially many trees to make predictions. Algorithms for such problems often employ dynamic programming and are not always unique. Finding one with optimal asymptotic runtime can be unintuitive, time-consuming,...
Constraint answer set programming or CASP, for short, is a hybrid approach in automated reasoning putting together the advances of distinct research areas such as answer set programming, constraint processing, and satisfiability modulo theories. Constraint answer set programming demonstrates promising results, including the development of a multitu...
We describe a novel approach for experimental High-Energy Physics (HEP) data analyses that is centred around the declarative rather than imperative paradigm when describing analysis computational tasks. The analysis process can be structured in the form of a Directed Acyclic Graph (DAG), where each graph vertex represents a unit of computation with...
{log} is a programming language at the intersection of Constraint Logic Programming, set programming and declarative programming. But {log} is also a satisfiability solver for a theory of finite sets and finite binary relations. With {log} programmers can write abstract programs using all the power of set theory and binary relations. These programs...
This document overviews some flow control aspects (semantics) of declarative program-ming languages. In particular, it explains in detail concepts such as substitution, term rewriting, lazy/eager evaluation, and unification.
Array operations are one of the most concise ways of expressing common filtering and simple aggregation operations that is the hallmark of the first step of a particle physics analysis: selection, filtering, basic vector operations, and filling histograms. The High Luminosity run of the Large Hadron Collider (HL-LHC), scheduled to start in 2026, wi...
Prolog is a well known declarative programming language based on propositional Horn formulas. It is useful in various areas, including artificial intelligence, automated theorem proving, mathematical logic and so on. An active research area for many years is to extend Prolog to larger classes of logic. Some important extensions of it includes the c...
The equational unification problem, where the underlying equational theory may be given as the union of component equational theories, appears often in practice in many fields such as automated reasoning, logic programming, declarative programming, and the formal analysis of security protocols. In this paper, we investigate the unification problem...
Array operations are one of the most concise ways of expressing common filtering and simple aggregation operations that are the hallmark of a particle physics analysis: selection, filtering, basic vector operations, and filling histograms. The High Luminosity run of the Large Hadron Collider (HL-LHC), scheduled to start in 2026, will require physic...
Declarative programming has been in existence for over 20 years and has been recently adopted towards user interface development for mobile applications. It is gaining growing importance because it has brought about reduced time of development, and modifications to the user interface do not require major recompilation. Static analysis plays a role...
Motivated by a need for a model of reversible computation appropriate for a Brownian molecular architecture, the א calculus is introduced. This novel model is declarative, concurrent, and term-based—encapsulating all information about the program data and state within a single structure in order to obviate the need for a von Neumann-style discrete...
Discrete mathematics is the foundation of computer science. It focuses on concepts and reasoning methods that are studied using math notations. It has long been argued that discrete math is better taught with programming, which takes concepts and computing methods and turns them into executable programs. What has been lacking is a principled approa...
Emerging cyber-physical systems, such as robot swarms, crowds of augmented people, and smart cities, require well-crafted self-organizing behavior to properly deal with dynamic environments and pervasive disturbances. However, the infrastructures providing networking and computing services to support these systems are becoming increasingly complex,...
This document defines the Zoea programming language. Zoea is a simple declarative programming language based on the concept of inductive programming. Instead of writing code in the conventional sense the Zoea developer describes the behaviour of a program as a set of scenarios consisting of inputs and associated outputs. As a result Zoea programs r...
The given work describes a technology of construction of neural network system of artificial intellect (AI) at a junction of declarative programming and machine training on the basis of modelling of cortical columns. Evolutionary mechanisms, using available material and relatively simple phenomena, have created complex intelligent systems. From thi...