SNOBOL , A String Manipulation Language
Journal of the ACM (JACM)
ACM '65 Proceedings of the 1965 20th national conference
SYMSAC '71 Proceedings of the second ACM symposium on Symbolic and algebraic manipulation
Symbolic integration the stormy decade
SYMSAC '71 Proceedings of the second ACM symposium on Symbolic and algebraic manipulation
PILOT: A STEP TOWARDS MAN-COMPUTER SYMBIOSIS
PILOT: A STEP TOWARDS MAN-COMPUTER SYMBIOSIS
AN ON-LINE SYSTEM FOR ALGEBRAIC MANIPULATION
AN ON-LINE SYSTEM FOR ALGEBRAIC MANIPULATION
A semantic matcher for computer algebra
SYMSAC '86 Proceedings of the fifth ACM symposium on Symbolic and algebraic computation
Algebraic simplification: a guide for the perplexed
Communications of the ACM
Symbolic mathematical computation—introduction and overview
SYMSAC '71 Proceedings of the second ACM symposium on Symbolic and algebraic manipulation
SYMSAC '71 Proceedings of the second ACM symposium on Symbolic and algebraic manipulation
Algebraic simplification a guide for the perplexed
SYMSAC '71 Proceedings of the second ACM symposium on Symbolic and algebraic manipulation
SYMSAC '76 Proceedings of the third ACM symposium on Symbolic and algebraic computation
ACM SIGSAM Bulletin
ACM SIGSAM Bulletin
A short survey on the state of the art in matching and unification problems
ACM SIGSAM Bulletin
An expression analysis package for REDUCE
ACM SIGSAM Bulletin
A discussion and implementation of Brown's REX simplification algorithm
ACM SIGSAM Bulletin
Hi-index | 0.02 |
The pattern matching facility of MACSYMA, an algebraic manipulation system, is described in this paper. By taking advantage of the special semantic properties of algebraic expressions, diverse expressions are recognized as occurrences of the same pattern. For example, a semantic pattern for “quadratic in x” matches both 3*x**2+4 and (x+1)*(x+6). Patterns are created by declaring variables to satisfy predicates, and then composing, out of these variables, expressions which serve as templates for the pattern matching process. Efficiency is achieved by compiling programs corresponding to each pattern. Specific examples show how this recognition capability is used in augmenting simplification rules and in writing algorithms for the solution of differential equations. Other systems with related capabilities are compared with regard to their implementations and matching strategies.