skip to main content
article
Free Access

An analysis of ML typability

Published:01 March 1994Publication History
Skip Abstract Section

Abstract

We carry out an analysis of typability of terms in ML. Our main result is that this problem is DEXPTIME-hard, where by DEXPTIME we mean DTIME(2n0(1)). This, together with the known exponential-time algorithm that solves the problem, yields the DEXPTIME-completeness result. This settles an open problem of P. Kanellakis and J. C. Mitchell.

Part of our analysis is an algebraic characterization of ML typability in terms of a restricted form of semi-unification, which we identify as acyclic semi-unification. We prove that ML typability and acyclic semi-unification can be reduced to each other in polynomial time. We believe this result is of independent interest.

References

  1. ~CHANDRA, A. K., KOZEN, D., AND STACKMEYER, L., 1981. Alternation. J. ACM 28, 1, 114 133 Google ScholarGoogle Scholar
  2. ~CLEMENT, D., DESPEYROUX, J., DESPEYROUX, T., AND KAHN, G., 1986. A s~mple applicative ~language: Mim-ML In Proceedings of the 1986 ACM Conference on LISP anti Functional ~Programming (Cambridge, Mass., Aug. 4-5). ACM, New York, pp. 13-27. Google ScholarGoogle Scholar
  3. ~DAM&S, L., AND MILNER, R., 1982. Principal type-schemes for functional programs. In Proceed- ~tngs of the 9th ACM Symposatm Principles of Programming Language3 (Albuquerque, N.M., Jan. ~25 27). ACM, New York. pp. 207-212. Google ScholarGoogle Scholar
  4. ~DWORK, C., KANELAKIS, P., AND MITCItELL, J. C., 1984. On the sequential nature of unification. ~J. Logic Prog. 1, 35-50. Google ScholarGoogle Scholar
  5. ~HENGLHN, F., 1988. Type inference and semi-unification. In Proceedings of the ACM &'mpostum ~on LISP and Functional Programming (Snowbird, Ut., July 25 27). ACM, New York, pp. ~184 197. Google ScholarGoogle Scholar
  6. ~HENGLEIN, F., AND MAiRSON, H. G., 1991. The complexity of type reference for higher-order ~lambda calculi. In Proceedings of the 18th A CM Symposium Principles o{ Programming Languages' ~(Orlando, Fla., Jan. 21-23). ACM, New York, pp. 119 130. Google ScholarGoogle Scholar
  7. ~HOOVER, P. K., 1966. The undeeidabfiity of the Turing machine immortality problem. J. $~vmb. ~Logic 31, 2, 219-234.Google ScholarGoogle Scholar
  8. ~KANELLAKIS, P., AND MITCHELL, J C., 1989. Polymorphic unification and ML typing. In Proceed- ~rags of the 16th ACM Symposium on Principles of Programming Language~ (Austin, Tex, Jan. ~11-13). ACM, New York, pp. 105-115. Google ScholarGoogle Scholar
  9. ~KANELLAKIS, P., MAIRSON, H. G., AND MITCHELL, J. C., 1990. Umfication and ML type recon- ~struction. In Computational Logic: Essays tn Honor of Alan Robinson. J.-L. Lassez and G. ~Plotkin, eds. MIT Press, Cambridge, Mas~., 1990Google ScholarGoogle Scholar
  10. ~KAPUR, D., MUSSER, D., NARENDRAN, P., AND STILLMAN, J., 1988. Semi-unification. In Proceed- ~rags of the 8th Conference on Foundations of Software Technolo~' and Theoretical Computer ~Science (Pune, India, Dec.). Lecture Notes m Computer Science, vol. 338. Springer-Verlag, ~Berlin/New York, pp. 435-454. Google ScholarGoogle Scholar
  11. ~KFOURY, A. J., TIURYN, J., AND URZYCZYN, P., 1989. Computational consequences and partial ~solutions of a generalized unification problem. In Proceedings of the 4th Annual IEEE Sympo- ~sium on Logic in Computer Science. IEEE, New York, pp. 93-105. Google ScholarGoogle Scholar
  12. ~KFOURY, A. J., T~URYN, J., AND URZYCZYN, P., 1993. The undecidabihty of the semi-unification ~problem. Inf. Computation 102, 1 (Jan.), 83-101. Google ScholarGoogle Scholar
  13. ~MAIRSON, H. G., 1990. Deciding ML typability is complete for deterministic exponential time. In ~Proceedings of 17th A CM Symposium on the Pnnciples of Programming Languages (San Francisco, ~Calif., Jan. 17-19). ACM, New York, pp. 382-401. Google ScholarGoogle Scholar
  14. ~MILNER, R., 1978. A theory of type polymorpMsm in programming. J. Compat. Syst. Sci., 17, ~348-375.Google ScholarGoogle Scholar
  15. ~MILNER, }~.~ 198.5 The standard ML core language. Polvmorphism, 11, 2 (Oct.), 1-16.Google ScholarGoogle Scholar
  16. ~PATERSON, M. S., AND WEGMAN, M. N., 1978. Linear unification. J. Comput. Syst. Set., 16, ~158-167.Google ScholarGoogle Scholar
  17. ~PEYTON JONES, S. L., 1987. The hnplementation of Funcnonal Programming Languages. Prentice- ~Hall, Englewood Cliffs, N.J. Google ScholarGoogle Scholar
  18. ~TYSZKIEWICZ, J., 1987. Typability in the finitely typed lambda calculus in PTIME-complete. MS ~dissertation. Univ. Warsaw, Warsaw, Poland.Google ScholarGoogle Scholar

Index Terms

  1. An analysis of ML typability

                          Recommendations

                          Comments

                          Login options

                          Check if you have access through your login credentials or your institution to get full access on this article.

                          Sign in

                          Full Access

                          • Published in

                            cover image Journal of the ACM
                            Journal of the ACM  Volume 41, Issue 2
                            March 1994
                            230 pages
                            ISSN:0004-5411
                            EISSN:1557-735X
                            DOI:10.1145/174652
                            Issue’s Table of Contents

                            Copyright © 1994 ACM

                            Publisher

                            Association for Computing Machinery

                            New York, NY, United States

                            Publication History

                            • Published: 1 March 1994
                            Published in jacm Volume 41, Issue 2

                            Permissions

                            Request permissions about this article.

                            Request Permissions

                            Check for updates

                            Qualifiers

                            • article

                          PDF Format

                          View or Download as a PDF file.

                          PDF

                          eReader

                          View online with eReader.

                          eReader