Contrastin, Mistral, Orchard, Dominic A., Rice, Andrew C. (2018) Automatic reordering for dataflow safety of Datalog. Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming, . (doi:10.1145/3236950.3236954) (KAR id:68499)
|
PDF
Author's Accepted Manuscript
Language: English |
|
|
Download this file (PDF/1MB) |
Preview |
| Request a format suitable for use with assistive technology e.g. a screenreader | |
| Official URL: http://dx.doi.org/10.1145/3236950.3236954 |
|
| Additional URLs: |
|
Abstract
Clauses and subgoals in a Datalog program can be given in any order without affecting program meaning. However, practical applications of the language require the use of built-in or external predicates with particular dataflow requirements. These can be expressed as input or output “modes” on arguments. We describe a static analysis of moding for Datalog which calculates how to transform an ill-moded program into a well-moded program by reordering clause subgoals to satisfy dataflow requirements. We de- scribe an incremental algorithm which efficiently finds a reordering if it exists. This frees the programmer to focus on the declarative specification of a program rather than implementation details of external predicates. We prove that our computed reorderings yield well-moded programs (soundness) and if a program can be made well-moded, then we compute a reordering to do so (completeness).
| Item Type: | Article |
|---|---|
| DOI/Identification number: | 10.1145/3236950.3236954 |
| Subjects: | Q Science > QA Mathematics (inc Computing science) > QA 75 Electronic computers. Computer science |
| Institutional Unit: | Schools > School of Computing |
| Former Institutional Unit: |
Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
|
| Funders: | Organisations -1 not found. |
| Depositing User: | Dominic Orchard |
| Date Deposited: | 06 Aug 2018 09:22 UTC |
| Last Modified: | 20 May 2025 10:22 UTC |
| Resource URI: | https://kar.kent.ac.uk/id/eprint/68499 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):

https://orcid.org/0000-0002-7058-7842
Altmetric
Altmetric