Unification Modulo Isomorphisms between Dependent Types for Type-based Library Search
Type-based library search allows developers to efficiently find reusable software components by their type signatures, as exemplified by tools like Hoogle. This capability is especially important in interactive theorem provers (ITPs), where reusing existing proofs can greatly accelerate development. Previous type-based library search tools for ITPs, such as SearchIsos and Loogle, support only a subset of desirable search flexibilities, including argument reordering, currying/uncurrying, generalisation, and the inclusion of extra premises. However, none can handle all these flexibilities simultaneously, resulting in missed relevant matches. In this work, we propose a type-based library search method based on equational unification modulo a set of type isomorphisms for dependent product/sum types, enabling all the desired search flexibilities. We present a semi-algorithm for this equational unification and provide a prototype implementation to demonstrate the feasibility of our approach.
Sun 12 OctDisplayed time zone: Perth change
14:00 - 15:30 | |||
14:00 30mTalk | Gradual Metaprogramming TyDe Tianyu Chen Indiana University, Darshal Shetty Indiana University, Jeremy G. Siek Indiana University, Chao-Hong Chen Meta, Weixi Ma Meta, Arnaud Venet Meta, Rocky Liu Meta Link to publication DOI Pre-print | ||
14:30 30mTalk | Unification Modulo Isomorphisms between Dependent Types for Type-based Library Search TyDe Satoshi Takimoto Institute of Science Tokyo, Sosuke Moriguchi Institute of Science Tokyo, Takuo Watanabe Institute of Science Tokyo DOI | ||
15:00 30mTalk | Generating a corpus of Hazel programs from ill-typed OCaml programs (Extended Abstract) TyDe |