24
views
0
recommends
+1 Recommend
0 collections
    0
    shares
      • Record: found
      • Abstract: found
      • Article: found
      Is Open Access

      Coinductive Soundness of Corecursive Type Class Resolution

      Preprint

      Read this article at

      Bookmark
          There is no author summary for this article yet. Authors can add summaries to their articles on ScienceOpen to make them more accessible to a non-specialist audience.

          Abstract

          Horn clauses and first-order resolution are commonly used for the implementation of type classes in Haskell. Recently, several core- cursive extensions to type class resolution have been proposed, with the common goal of allowing (co)recursive dictionary construction for those cases when resolution does not terminate. This paper shows, for the first time, that corecursive type class resolution and its recent extensions are coinductively sound with respect to the greatest Herbrand models of logic programs and that they are inductively unsound with respect to the least Herbrand models.

          Related collections

          Most cited references6

          • Record: found
          • Abstract: not found
          • Article: not found

          On the origins of bisimulation and coinduction

            Bookmark
            • Record: found
            • Abstract: not found
            • Article: not found

            Type classes in Haskell

              Bookmark
              • Record: found
              • Abstract: not found
              • Article: not found

              Semantics of infinite tree logic programming

                Bookmark

                Author and article information

                Journal
                2016-08-18
                Article
                1608.05233
                5a4092a3-152c-4d7c-b563-1ef6b600db2b

                http://arxiv.org/licenses/nonexclusive-distrib/1.0/

                History
                Custom metadata
                LOPSTR/2016/2
                Pre-proceedings paper presented at the 26th International Symposium on Logic-Based Program Synthesis and Transformation (LOPSTR 2016), Edinburgh, Scotland UK, 6-8 September 2016 (arXiv:1608.02534)
                cs.PL

                Programming languages
                Programming languages

                Comments

                Comment on this article