Computer-Aided Reasoning: An Approach
Computer-Aided Reasoning: An Approach
Structured Theory Development for a Mechanized Logic
Journal of Automated Reasoning
Tractable and intractable second-order matching problems
COCOON'99 Proceedings of the 5th annual international conference on Computing and combinatorics
Hi-index | 0.00 |
Among the standard books distributed with ACL2 is the consider-hint book in the hints subdirectory, which implements a heuristic for computing functional instantiations. The implementation of the hint involves four basic algorithms: a second-order pattern matching algorithm that can compute instantiations for constrained and defined functions that call constrained functions, a process for generating variants of a term obtained by applying equations, a process for extending second-order matching through definitions so that when instantiating defined functions the algorithm can pick up appropriate bindings for the constrained functions inside the definitions, and an algorithm for sorting among likely functional substitutions. The second-order matching algorithm is an incomplete and slightly extended implementation of the Huet-Lang algorithm. We describe the four basic algorithms involved in guessing functional instantiations. We briefly suggest further work required to make the utility robust and suggest a new feature that could be added to ACL2 if this utility were sufficiently robust. We hope that some enterprising user or student will take up these challenges.