An overview of Ciao and its design philosophy
From MaRDI portal
Publication:2893101
DOI10.1017/S1471068411000457zbMath1244.68019MaRDI QIDQ2893101
Germán Puebla, Pedro Lopez-Garcia, Francisco Bueno, Edison Mera, Manuel Carro, Manuel V. Hermenegildo, Jose Francisco Morales
Publication date: 25 June 2012
Published in: Theory and Practice of Logic Programming (Search for Journal in Brave)
Theory of programming languages (68N15) Theory of compilers and interpreters (68N20) Logic programming (68N17)
Related Items (45)
From Logic to Functional Logic Programs ⋮ Verifying Catamorphism-Based Contracts using Constrained Horn Clauses ⋮ Making ProB Compatible with SWI-Prolog ⋮ ATLAS: automated amortised complexity analysis of self-adjusting data structures ⋮ Constraint Answer Set Programming without Grounding ⋮ An iterative approach to precondition inference using constrained Horn clauses ⋮ Top-down and Bottom-up Evaluation Procedurally Integrated ⋮ Incremental Tabling in Support of Knowledge Representation and Reasoning ⋮ Resource Usage Analysis of Logic Programs via Abstract Interpretation Using Sized Types ⋮ Three improvements to the top-down solver ⋮ Horn Clause Solvers for Program Verification ⋮ An Integrated Approach to Assertion-Based Random Testing in Prolog ⋮ Pre-indexed Terms for Prolog ⋮ Transformation-Enabled Precondition Inference ⋮ VeriFly: On-the-fly Assertion Checking via Incrementality ⋮ Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answer Set Programming ⋮ Fifty Years of Prolog and Beyond ⋮ Parallel Logic Programming: A Sequel ⋮ Analysis and Transformation of Constrained Horn Clauses for Program Verification ⋮ Tabling as a library with delimited control ⋮ Concolic testing in logic programming ⋮ Practical run-time checking via unobtrusive property caching ⋮ Description and Optimization of Abstract Machines in a Dialect of Prolog ⋮ Semantic code browsing ⋮ A general framework for static profiling of parametric resource usage ⋮ Evaluation of the Implementation of an Abstract Interpretation Algorithm using Tabled CLP ⋮ An empirically supported approach to the treatment of imprecision in vague reasoning ⋮ Unnamed Item ⋮ \textsc{Tor}: modular search with hookable disjunction ⋮ Unnamed Item ⋮ Unnamed Item ⋮ Unnamed Item ⋮ A sharing-based approach to supporting adaptation in service compositions ⋮ Failure tabled constraint logic programming by interpolation ⋮ A practical analysis of non-termination in large logic programs ⋮ Interval-based resource usage verification by translation into Horn clauses and an application to energy consumption ⋮ Tree dimension in verification of constrained Horn clauses ⋮ Singular and plural functions for functional logic programming ⋮ Enforcing termination of interprocedural analysis ⋮ A Transformational Approach to Parametric Accumulated-Cost Static Profiling ⋮ Description, Implementation, and Evaluation of a Generic Design for Tabled CLP ⋮ A Transformational Approach to Resource Analysis with Typed-norms Inference ⋮ Incremental and Modular Context-sensitive Analysis ⋮ Type-based analysis of logarithmic amortised complexity ⋮ Testing your (static analysis) truths
Uses Software
Cites Work
- Abstraction-carrying code: a model for mobile code safety
- Automatic inference of determinacy and mutual exclusion for logic programs using mode and type analyses
- Integrated program debugging, verification, and optimization using abstract interpretation (and the Ciao system preprocessor)
- Specification and verification challenges for sequential object-oriented programs
- Constraint Handling Rules
- Compile-time derivation of variable dependency using abstract interpretation
- Automatic compile-time parallelization of logic programs for restricted, goal level, independent and parallelism
- Strict and nonstrict independent and-parallelism in logic programs: Correctness, efficiency, and compile-time conditions
- The execution algorithm of mercury, an efficient purely declarative logic programming language
- Tabled evaluation with delaying for general logic programs
- Context-Sensitive Multivariant Assertion Checking in Modular Programs
- A practical framework for theabstract interpretation of logic programs
This page was built for publication: An overview of Ciao and its design philosophy