Dynamic Perfect Hashing: Upper and Lower Bounds
SIAM Journal on Computing
Isomorphisms of types: from &lgr;-calculus to information retrieval and language design
Isomorphisms of types: from &lgr;-calculus to information retrieval and language design
Reducing randomness via irrational numbers
STOC '97 Proceedings of the twenty-ninth annual ACM symposium on Theory of computing
Fast Probabilistic Algorithms for Verification of Polynomial Identities
Journal of the ACM (JACM)
A sublinear additive sieve for finding prime number
Communications of the ACM
Efficient algorithms for isomorphisms of simple types
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Retrieving Library Identifiers via Equational Matching of Types
Proceedings of the 10th International Conference on Automated Deduction
Deciding Isomorphisms of Simple Types in Polynomial Time
Deciding Isomorphisms of Simple Types in Polynomial Time
Hi-index | 0.00 |
We give the first linear time (randomised) algorithm for thefirst order isomorphism problem, that is, the isomorphism ofnon-recursive types involving product-and function-typeconstructors, under the axioms of commutativity and associativityof products, currying and distributivity of functions overproducts. This problem can also be thought of as the problem offormal equality-testing of multi-variate expressions involving onlymultiplications and exponentiation. Previous work gave adeterministic O(n log2n) time andO(n) space algorithm for the problem (n beingthe input size). Our specific contribution includes two randomisedalgorithms for the problem:(i) an O(n) time Monte Carlo algorithm(that is, with a small probability it may decide erroneously thatthe two types are isomorphic), and(ii)an O(n log n) expected time andO(n) space Las Vegas algorithm (that is, witha small probability it may execute long).The algorithms rely on a preprocessing stage, which computes thesequence of the first n primes in O(n logn/log log n) time and space.