Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
OLD resolution with tabulation
Proceedings on Third international conference on logic programming
Magic sets and other strange ways to implement logic programs (extended abstract)
PODS '86 Proceedings of the fifth ACM SIGACT-SIGMOD symposium on Principles of database systems
The Alexander method-a technique for the processing of recursive axioms in deductive databases
New Generation Computing
Bottom-up beats top-down for datalog
PODS '89 Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
A finite presentation theorem for approximating logic programs
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Soft typing with conditional types
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Set-based analysis of ML programs
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
XSB as an efficient deductive database engine
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Efficient inference of partial types
Journal of Computer and System Sciences
A type system equivalent to flow analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient inference of object types
Information and Computation
Tabled evaluation with delaying for general logic programs
Journal of the ACM (JACM)
Modern compiler implementation in Java: basic techniques
Modern compiler implementation in Java: basic techniques
Linear-time subtransitive control flow analysis
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
Interconvertbility of set constraints and context-free language reachability
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Partial online cycle elimination in inclusion constraint graphs
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Breaking through the n3barrier: faster object type
Theory and Practice of Object Systems - Special issue on foundations of object-oriented languages
An Efficient Unification Algorithm
ACM Transactions on Programming Languages and Systems (TOPLAS)
An algorithm for reasoning about equality
Communications of the ACM
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A Theory of Objects
On the Cubic Bottleneck in Subtyping and Flow Analysis
LICS '97 Proceedings of the 12th Annual IEEE Symposium on Logic in Computer Science
The complexity of relational query languages (Extended Abstract)
STOC '82 Proceedings of the fourteenth annual ACM symposium on Theory of computing
ACL '83 Proceedings of the 21st annual meeting on Association for Computational Linguistics
Efficient parsing for bilexical context-free grammars and head automaton grammars
ACL '99 Proceedings of the 37th annual meeting of the Association for Computational Linguistics on Computational Linguistics
The language intersection problem for non-recursive context-free grammars
Information and Computation
Automatic discovery of covariant read-only fields
ACM Transactions on Programming Languages and Systems (TOPLAS)
Monadic concurrent linear logic programming
PPDP '05 Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming
Multitext Grammars and synchronous parsers
NAACL '03 Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology - Volume 1
ICALP '08 Proceedings of the 35th international colloquium on Automata, Languages and Programming, Part II
Algorithmic specifications in linear logic with subexponentials
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
The generalized A* architecture
Journal of Artificial Intelligence Research
Behind BANANA: Design and Implementation of a Tool for Nesting Analysis of Mobile Ambients
Electronic Notes in Theoretical Computer Science (ENTCS)
A logical algorithm for ML type inference
RTA'03 Proceedings of the 14th international conference on Rewriting techniques and applications
Algorithmic aspects of natural language processing
Algorithms and theory of computation handbook
Grammar factorization by tree decomposition
Computational Linguistics
Products of weighted logic programs
Theory and Practice of Logic Programming
Prefix probability for probabilistic synchronous context-free grammars
HLT '11 Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics: Human Language Technologies - Volume 1
Reasoning as axioms change: incremental view maintenance reconsidered
RR'11 Proceedings of the 5th international conference on Web reasoning and rule systems
Banshee: a scalable constraint-based analysis toolkit
SAS'05 Proceedings of the 12th international conference on Static Analysis
A non-iterative data-flow algorithm for computing liveness sets in strict SSA programs
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
Dyna: extending datalog for modern AI
Datalog'10 Proceedings of the First international conference on Datalog Reloaded
A generalized view on parsing and translation
IWPT '11 Proceedings of the 12th International Conference on Parsing Technologies
Tree parsing with synchronous tree-adjoining grammars
IWPT '11 Proceedings of the 12th International Conference on Parsing Technologies
Parsing of partially bracketed structures for parse selection
IWPT '11 Proceedings of the 12th International Conference on Parsing Technologies
Distributed deductive databases, declaratively: the L10 logic programming language
Proceedings of the 2011 ACM SIGPLAN X10 Workshop
Nesting analysis of mobile ambients
Computer Languages, Systems and Structures
Logical approximation for program analysis
Higher-Order and Symbolic Computation
Proceedings of the 14th symposium on Principles and practice of declarative programming
Mildly non-projective dependency grammar
Computational Linguistics
Hi-index | 0.00 |
This paper argues that for many algorithms, and static analysis algorithms in particular, bottom-up logic program presentations are clearer and simpler to analyze, for both correctness and complexity, than classical pseudo-code presentations. The main technical contribution consists of two theorems which allow, in many cases, the asymptotic running time of a bottom-up logic program to be determined by inspection. It is well known that a datalog program runs in O(nk) time where k is the largest number of free variables in any single rule. The theorems given here are significantly more refined. A variety of algorithms are presented and analyzed as examples.